当前位置:  开发笔记 > 编程语言 > 正文

将应用程序从Solaris移植到Linux

如何解决《将应用程序从Solaris移植到Linux》经验,为你挑选了2个好方法。

我将承担从Solaris到Linux平台移植相当大的C++网络应用程序代码库的任务.该代码还使用ACE等第三方库.最初编写的应用程序未计划在将来进行移植.

我想就如何完成任务获得一些建议和意见.什么是最好的方法.

-Prabhu.小号



1> David Rodríg..:

ACE是一个优势,因为它是多平台的.您必须检查您的类型大小的使用位置和方式.如果使用ACE_*基本类型,那么你可以在那里使用条纹,因为它们是可移植的,否则我首先要将Solaris版本更改为使用多平台数据类型和元素(使用ACE工具,因为你已经有了它).

如果您使用的是任何仅有Solaris的外部库,则必须在linux中找到等效项并编写包装器,以便应用程序的其余部分不需要知道正在使用的实现.

之后,只需一个代码库就可以直接迁移到linux.你应该完全编译和测试它.



2> David Allan ..:

"没有便携式应用程序只有移植的应用程序"

首先,如果可以的话,首先在两个平台上使用相同的工具.IE如果Solaris版本尚未更改为使用GCC和GNU make等,我建议您先更改此版本并使Solaris版本正常工作.您将发现首先修复编译器问题,而不是尝试在尝试移植应用程序的同时在Linux上修复它们.

其次要确保您可以在同一版本的每个平台上获得所有相同的库.我想你可以获得Linux for ACE.确保该版本的库在Solaris上运行.这将限制兼容性问题.

完成后,真正的工作就开始了.

您需要一次编译一个源文件,并找到Linux中不可用的函数.首先寻找两种操作系统都可用的替代品.如果没有简单的替换,那么为Solaris创建一个库,为Linux创建一个库.创建包装类或函数以抽象不兼容性.

如果这听起来像很多工作 - 那就是.

推荐阅读
mobiledu2402851203
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有