Linux 版 (精华区)
发信人: netiscpu (说不如做), 信区: Unix
标 题: Gcc的安装与使用 (7)
发信站: 紫 丁 香 (Sat May 16 21:00:24 1998), 转信
发信人: jacky (绞肉机), 信区: linux
标 题: Gcc的安装与使用7
发信站: 饮水思源站 (Fri May 15 16:42:18 1998) , 站内信件
要注意的是,如果你想要得到最佳状况的执行成果(optimal performance),可千
万别相信我的话.无论如何,一定要进行测试.gcc编译器还有许多的参数
(switches)可用,其中可能就有一种最特别的组合(set),可以给你最佳化的结果
喔.
11/14/97译
4.2.2. Internal compiler error: cc1 got fatal signal 11
Signal 11是指 SIGSEGV, 或者 `segmentation violation'.通常这是指 说gcc对自己所
用的指标感到困惑起来,而且还尝试著写入不属於它的记忆体.所以,这可能是一个gcc的
bug.
然而,大部份而言,gcc是一件经过严密测试且可靠度佳的软体佳作.它也用了大量复杂的
资料结构与惊人的指标数量.简言之,若是要评选本世纪最挑惕与最一丝不□的RAM测
试程式(RAM tester)的话,gcc绝对可以一摘后冠的.假如你无法重新复制这只bug---当你
重新开始编译时,错误的讯息并没有一直出现在同一个地方---那几乎可以确定,是你的
硬体本身有问题(CPU,记忆体,主机板或是快取记忆体).千万不要因为你的电脑可以通过
开机程序的测试(power-on checks),或者Windows可以跑得很顺,或者其它什麽的,就回过
头来大肆宣传说这是gcc的一个bug;你所做的这些测试动作,通常没有什麽实际上的价值,
而且没有价值也是很合理的结论.另外,也不要因为编译核心时,总是停留在`make
zImage'的阶段,就要大骂这是gcc的bug---当然它会停在那儿啊!做`make zImage'时,需要
编译的档案可能超过200档案;我们正在研拟一个比较小的地方来取代.
如果你可以重覆产生这个bug,而且(最好是这样啦)可以写一个短小的程式来展示这只
bug的话,你就可以把它做成bug报表(bug report),然後email给FSF,或者是linux-gcc邮件表列
(linux-gcc mailing list).你可以去参考gcc的说明文件,看看有什麽详细的资讯,是他们所需要
的.
4.3. 移植能力(Portability)
据报,近日来许多正面消息指出,若有某件东东到现在都还没移植到Linux上去,那麽可以
肯定的是,它一定一点价值也没有.:-)
嗯!正经一点.一般而言,原始码只需要做一些局部的修改(minor changes),就可以克服(get
over)Linux 100%与POSIX相容的特质(compliance).如果你做了任何的修改,而将此部份传
回(passing back)给原作者,会是很有建设性的举动(worthwhile).这样日後就只需要用到
'make',就能得到一个可执行的档案了.
4.3.1. BSD教派(BSDisms) (有 bsd_ioctl, daemon 与 <sgtty.h>)
编译程式时,可以配合-I/usr/include/bsd与连结-lbsd的程式库.(例如:在你的Makefile
--
m;32m※ 来源:·饮水思源站 bbs.sjtu.edu.cn·[FROM: 202.112.26.100]m
--
Enjoy Linux!
-----It's FREE!-----
※ 来源:.紫 丁 香 bbs.hit.edu.cn.[FROM: mtlab.hit.edu.cn]
Powered by KBS BBS 2.0 (http://dev.kcn.cn)
页面执行时间:2.324毫秒