免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 1946 | 回复: 0

[SCO UNIX] 黔驴技穷了,解决不了在 sco 5 上编译安装 gcc 的问题。 [复制链接]

论坛徽章:
1
2015年辞旧岁徽章
日期:2015-03-03 16:54:15
发表于 2012-04-01 22:36 |显示全部楼层
晕乎乎,可能木有说清楚。

我的意思是 从头开始,打造一个完全脱离 sco 的原生开发环境的 gcc 编译环境。

目前的实现:已经实现了 gcc 3.3.1 的编译安装,顺利集成了 gnu 的 as、ar、nm、gporf、autoconf、automake、strips 等。

已经顺利集成了 glibc 2.0 , fsu-pthreads-3.1.4 , zlib-1.4,openssl 0.96e(这是因为更高的版本需要内核里面有一个生成随机数的自旋锁,由于 sco 5.0.6 及以下版本内核不提供这个功能,因此即使高版本能顺利编译成功,也无法使用)。

目前遇到的问题是:gcc 使用系统原生的 ld , 没有任何问题,可以成功编译程序。 cc 使用编译出来的 gnu ld 来作为链接器也木有问题,就是 gcc 使用编译出来的 gnu ld 就无法生成执行文件。


一个小知识:

我们的编译环境实际执行的动作如下:

gcc 用于将 C 程序代码编译成 汇编代码 ,也就是 .S 的文件,并将这个文件内容以数据流的方式传送给 gnu as。

gas 用于将传送过来的汇编代码编译成 .o 的机器码,并调用 ld 进行链接

ld 用于将二进制代码与系统的标准库链接成可执行文件。

sco 默认的可执行代码的格式是 ibcs2, 支持的可执行文件格式为 elf、coff。

========================================================

补充说明。

gnu as 冒失也没有问题,用 gcc 、gas 和系统原生的 ld 可以生成正确的执行文件,用 原生的 cc 、 gas 、 原生的 ld 也能编译出正确的可执行文件。

您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP