将Unix应用程序移植到Linux系统详解
移植的工作量和复杂程度直接和依赖系统和环境的代码的多少成正比。如果您的应用程序只用标准的语言构造和标准的库,那么移植起来相对容易些。例如, Java®应用程序常常属于这一类。反之,如果您的应用程序是一个 C 程序,其中用到 Solaris 上不符合 POSIX 的服务或依赖在 Linux 上没有的第三方产品,那么移植难度将大大增加。通常,系统测试、配置的测试和软件的安装是重要步骤并且是移植的主要部分。
我的应用程序还能在原来的 UNIX 平台上运行吗?
缓解 ― 即使把开发转移到 Linux 后,您仍可以保持原来的平台选择,以满足您的其它市场。移植到 Linux 通常意味着构建工具被 GNU 工具替代,平台相关的线程库被符合 POSIX 的替代。在其它 UNIX 平台上,GNU 工具和库都能用,使您能同时兼顾您原来的平台和 Linux。
C 和 C++ 应用程序的移植指南
以下技术讨论来自 Solaris to Linux porting guide(1)(ibm.com/developerworks/linux/library/l-solar/),这些讨论也可被用于其它主流 UNIX 系统。
Linux 操作系统、构建工具和多数语言的编译器可免费获得并可从因特网上下载。为了开始移植,您将需要提供硬件和开发人员:
第1步 ― 下载所需的开发工具和 Linux 分发版。
第2步 ― 改用 Linux 开发工具但仍然运行 Solaris。这种方法使得转变更平缓。
第3步 ― 熟悉 Linux 操作系统但仍旧在 Sun 硬件上运行。
第4步 ― 把应用程序移到目标 Linux 平台。
第1步:下载
以下列出的是所需的编译器、构建工具和相关的在线文档链接:
GCC(GNU Compiler Collection)工具套件包含一个 C 编译器和一个 C++ 编译器
gcc.gnu.org/releases.html
在线文档
gcc.gnu.org/onlinedocs/gcc-2.95.2/gcc_toc.html
Solaris GNU 编译器和 make(gmake)实用程序
在线文档
docs.sun.com/
gnu.org/manual/make-3.79.1/html_mono/make.html
Linux 可从以下 Linux 发行商那里获得。
Caldera www.caldera.com/
Red Hat www.redhat.com/
SuSE www.suse.com/
Turbolinux www.turbolinux.com/
― Linux 的 UltraSPARC 版本
Sun www.sun.com
第2步:为 Solaris 上的 Linux 构建您的 C/C++ 应用程序












文章评论
共有 0 位网友发表了评论 此处只显示部分留言 点击查看完整评论页面