快捷搜索:  as  2018  FtCWSyGV  С˵  test  xxx  Ψһ  w3viyKQx

葡京娱乐场娱乐网址_龟发之家论坛



移植必要斟酌的几个相关的身分:

o 编译器说话

o 代码中与硬件相关的身分(如字长或字节尾隶属物)

o 平台运行时办事

o 构建对象隶属物

o 可用的数据库、联网前提和消息通报中心件

o 用户界面可移植性

o 测试案例和测试情况移植事情的规模和繁杂性将与系统和情况相关的代码直接成正比。假如利用法度榜样只应用标准说话构件和标准库,而且并不必然要在 SPARC 处置惩罚器上的 Solaris 下运行,那么移植就相对轻易一点。举例来说,Java 利用法度榜样平日就属于这个范畴。另一方面,假如利用法度榜样是不应用 Solaris 上的 POSIX 办事的 C 法度榜样,或者依附于 Linux 上没有的第三方产品,那么移植事情就艰苦多了。当您移植利用法度榜样时,很多环境下您都是在将弗成移植的措施和隶属物调换成可移植性更好的器械。您会将 Solaris 构建对象调换成 GNU 对象,并应用与 POSIX 相容的线程库代替 Solaris 中对应的库。由于这些对象和接口在 Solaris 上也能找到,以是您可以继承自由地应用 Solaris,以致在将开拓平台移植到 Linux 之后继承把握 Solaris 市场。

步骤 1:在 Solaris 上用 GNU 对象(GCC/gmake)构建 C/C++ 利用法度榜样

GCC(GNU Compiler Collection)对象套装包括一个 C 编译器和一个 C++ 编译器。由于 Solaris 和 Linux 中都有 GNU 编译器和 make 实用法度榜样,以是要用这些对象开始构建利用法度榜样相对来说对照轻易。首先,请您用上面的链接下载 GNU 对象,并将它们安装在 Solaris 上。然后,请您试着用 GNU gmake 实用法度榜样(而不是 Solaris make 实用法度榜样)来构建利用法度榜样。由于 GNU gmake 实用法度榜样与 Solaris make 实用法度榜样有所不合,以是根据您的 make 文件中应用的构件,您会碰着 GNU gmake 实用法度榜样天生的一些差错消息。请应用上面的 make 对象文档链接来帮您识别 make 文件中的问题区域,并响应地调剂 make 文件。 一旦您将 make 文件改动为应用 gmake,请在 make 文件中将被调用的 C 编译器的名称从 cc 改为 gcc ,并将 C++ 编译器的名称从 CC 改为 g++ 。然后从新构建利用法度榜样。您在构建历程中会碰着的差错消息(假如存在的话)可以分为两类:敕令行选项问题和代码问题。请辨别出那些因为 GNU 和 Sun 编译器吸收的敕令行选项中有所差别而孕育发生的消息。除了少数几个基础选项(如“-c”和“-g”)之外,编译器吸收的多半选项都不合。 下面,您就可以处置惩罚剩下与代码相关的差错消息和警告信息了。处置惩罚这些消息的一种简单的措施是将它们捕获在一葡京娱乐场娱乐网址个文件中,并挨个反省。请应用上面的编译器文档链接来懂得和处葡京娱乐场娱乐网址置惩罚编译器之间不合的问题。本文的 迁移对象和外包部分给出了一个公司列表,这些公司可以赞助您在利用法度榜样中办理那些因为葡京娱乐场娱乐网址编译器不合而孕葡京娱乐场娱乐网址育发生的问题。 在移植到 Linux 和将利用法度榜样链接到开放源代码库时,请留意与这些库相关的许可证和版权。您新移植的 C/C++ 利用法度榜样至少将被链接到 GNU C/C++ 运行时库。这些库受 GNU“copyleft”许可证的保护。假如您正在移植的软件有专有属性,而且您盘算在用 GNU 对象构建该软件之后顿时出售它,那么您最好审慎地周全理解 GNU 通用公共许可证和 GNU 次通用公共许可证(请参阅 参考资料)中规定的条目和前提。一旦您的软件被链接到由这些许可证保护的库上,GNU 许可证中的某些条目和前提就将沿用到您的软件上。

步骤 2:(可选的)在 SPARC 的 Linux 上构建和测试利用法度榜样

有一种不常见的环境,那便是被移植的利用法度榜样有对 SPARC 硬件特定的隶属物,这时步骤 2 就变成移植历程中紧张的中心阶段了。它使 Solaris 开拓者能够在不放弃底层 SPARC 硬件和不改动利用法度榜样中特定于 SPARC 的部分的条件下认识 Linux 情况。 请经由过程上面的链接之一来获取可以在您的 Sun 硬件上运行的 Linux 版本。然后安装操作系统,应用所供给的 GNU 对象从新构建利用法度榜样。由于您在步骤 1 中应用 GCC 构建了利用法度榜样,以是在步骤 2 中将碰着的差别将被限定到 Solaris 和 Linux 之间的运行时利用法度榜样编程接口(application programming interface,API)的差别。

步骤 3:在 Linux 上为其它硬件构建和测试利用法度榜样

在迁移历程的着末一个步骤中,首先请获取并在您选择的目标硬件上安装 Linux。可以直接应用 Linux 的办事器有 IBM 基于 Intel-IA32 的产品系列(包括 NetVista、IntelliStation、Netfinity)和新的 IBM eServer xSeries。IBM pSeries 和 zSeries 也可以应用 Linux(请参阅 参考资料)。您可以低价购得或免费下载盛行的用于 Intel/x86 的 Red Hat Linux 分发版,而且它在险些任何一台基于 Intel 的 PC 机上都很轻易安装和设置。SuSE 供给支持 IBM pSeries 和 zSeries 的 Linux 分发版。还有,您必然要安装将应用的编译器和对象。

其它留意事变

* 系统治理

总的来说,治理 Linux 与治理任何其它 UNIX 操作系统都险些一样。在某些详细的敕令和义务上有一些差别,IBM 和 UNIXGuide 已经宣布了对照图,总结了这些差别,此中不仅包括 Solaris 和 Linux 之间的差别,还包括 AIX 和其它版本的 UNIX 之间的差别(请参阅 参考资料)。有履历的 Solaris 系统治理员不必花费太大年夜力量就能够完全适应 Linux。

* 源代码治理

对付今朝正在应用 Solaris 上的 Sun Forte TeamWare 或者 SCCS(Source Code Control System,源代码节制系统)并盼望继承应用 SCCS 这种风格的源代码治理系统的开拓者来说,他们可以试着应用 GNU CSSC(Compatibly Stupid Source Control),开放源代码 SCCS 的克隆版本。CVS(Concurrent Versions System,并发版本系统,请参阅 参考资料)是 Linux 上更常用而且倍受推重的源代码治理系统。

* 其它第三方对象、实用法度榜样和库

Solaris 上有很多常见、盛行的第三方对象、实用法度榜样和库,它们都可以在 Li葡京娱乐场娱乐网址nux 上应用。鉴于 Linux 的日益遍及,支持 Linux 的第三方供应商的数目天天都在增长。

* 64 位谋略

Red Hat 和很多其它发行商为 Compaq/DEC Alpha 供给了一种 64 位版的 Linux。您可以在 AlphaLinux Web 站点上懂得关于这种 Linux 的其它信息。64 位的 Solaris 和 64 位的 Linux/Alpha 都应用 LP64 数据模型,它能够带来很好的兼容性。 不久,Intel Itanium(TM) IA-64 处置惩罚器也能应用一种 64 位版的 Linux。您可以在 IA-64 Linux Project Web 站点懂得关于这种 Linux 的更多信息。一种支持 IBM 64 位 PowerPC 体系布局的 Linux 也在开拓之中。 请留意,只管 SuSE Linux/UltraSPARC 的内核运行在 64 位的模式中,但 SuSE Linux/UltraSPARC 今朝并不支持 64 位的用户空间利用法度榜样。

* 端(Endian)款式

Sun SPARC 和 UltraSPARC 处置惩罚器以大年夜端(Big Endian)款式存储整数。假如您盼望将利用法度榜样移植到小端(Little Endian)版本的 Linux(如 Linux/Intel)上,那么您就必须办理利用法度榜样中任何与端款式有关的问题,利用法度榜样才能够精确运行。您也可以选择让利用法度榜样应用 Linux/PowerPC、Linux/zSeries 或 Linux/SPARC,它们都是 Linux/Intel 之外的大年夜端平台。

您可能还会对下面的文章感兴趣: