详解如何将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)实用程序 www.sunfreeware.com/ 在线文档 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 (编辑:应用网_丽江站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |