网络安全参考 | UNIX参考 | GPS参考 | 无线参考 | 在线手册 | OSBUG.ORG | SUNNY-NETWORK.COM
天线制作 GPS 地标
网站地图 RSS订阅
高级搜索 收藏本站
Home | 业界动态 | Open source | GNU | Linux | BSD | Solaris | AIX | HP-UX | IRIX | Mac OS X | Minix | Tru64 | SCO UNIX | Network | Security | X-Window | Database | 应用服务 | Programming | 经典著作 | 永远的纪念 | 杂项
 当前位置: Home > Minix > 文章  
用MINIX-386 gcc1.37.1编译gcc-1.40
文章来源: 互联网 文章作者: 未知 发布时间: 2006-07-29   字体: [ ]  
 

首先将gcc-1.40传到MINIX上。

 

使用上述命令在Linux上将gcc-1.40.tar.Z分割为大小不超过1400K的文件:

 

gcctz.aa1400k

gcctz.ab1400k

gcctz.ac  90k

 

复制到dos盘上,并在MINIX-386上使用dosread命令读取:

 

dosread b: gcctz.aa > gcc.tar.Z.aa

dosread b: gcctz.ab > gcc.tar.Z.ab

dosread b: gcctz.ac > gcc.tar.Z.ac

 

然后合并成一个大文件:

 

cat gcc.tar.Z.* > gcc.tar.Z

compress16 –d gcc.tar.Z

tar xf gcc.tar

 

最后得到目录:

 

/usr/john/gcc140/gcc-1.40/

 

使用i386 sysV gas配置文件。

 

RTFM – Read the F**king Message (查看编译出错信息)

 

使用i386 sysV gas配置文件。

 

参考awb提供的gcc-1.37.1Makefile文件对gcc-1.40Makefile进行修改,基本上没大问题。

 

运行config.gcc

config.gcc i386-sysv-gas

 

运行make碰到的问题1

 

cc的参数-g需要/usr/local/lib/libg.aRMS建议创建一个该名称空的库文件。使用命令:

 

ar rc /usr/local/lib/libg.a

不能生成空文件(nothing!

于是随便写了一个子程序zjzdummy.c,然后执行:

cc -c -o zjzdummy.o zjzdummy.c

ar rc /usr/local/lib/libg.a zjzdummy.o

生成了这个库文件,解决了这个问题。

 

运行make时碰到的问题2

 

在编译c-parse.tar.c程序时,出现错误:

 

fp stack overflow(浮点运算堆栈溢出)。

 

该问题是由于在安装gcc 1.37.1执行文件时,其要求对/usr/src/kernel/klib386.x进行补丁操作,虽然执行了这一步,但是kernel编译时最终是要使用klib.x的。而在补丁操作以后没有将klib386.x复制成klib.x(或者使用命令config 386),因此补丁没有起作用。

 

klib386.x复制成klib.x并重新编译内核,即可解决该问题。

 

运行make时问题3

 

arg-list too long make stop.,继续重新执行make即可。

 

运行make问题4

 

在创建float.h文件时,需要先编译出hard-params文件。失败,因此float.h不成功。

 

最后使用1.37.1的库gnulibfloat.h文件。

 

ranlib – 产生归档文件(archive)内容的一个索引,并将该索引保存在该archive中。该索引列出了archive中可重定位目标文件(元素)定义的每一个符号。该索引用于加速连接archive中子程序的速度。该命令与命令ar -s完全等同。

 

可以使用命令nm -s命令列出该索引。

 

--

原文链接: http://www.ieee.org.cn/dispbbs.asp?boardID=63&ID=25072

 
推荐文章
·维基百科: Minix
 
 
↑返回顶部   打印本页   关闭窗口↓  

Google
 
Web oldhand.org unixreference.net meshmea.org
相关分类
热点文章
·Minix引导过程分析
·使用minix3
·Minix资源
·Minix安装手记
·维基百科: Minix
·Minix3的适用范围
·Minix中内存管理的实现
·机器无软驱,如何在VMwa
相关文章
·3.8.4 MINIX时钟驱动程
·使用minix3
·Minix引导过程分析
·机器无软驱,如何在VMwa
·Minix中内存管理的实现
·如何在Linux下访问Minix
·Minix安装手记
·维基百科: Minix
更多...
 
 

Copyright(c) 2001-2009 OLDHAND ORGANIZATION, All Rights reserved.
Power by DedeCms 织梦内容管理系统