全面介绍Fedora gcc编译, 这里我发表一下个人理解,这里将介绍Fedora gcc编译问题的解决方法,Linux具备现代一切功能完整的UNIX系统所具备的全部特征,其中包括真正的多任务、虚拟内存、共享库、优秀的内存管理以及TCP/IP网络支持等。
Fedora gcc编译中用gcc3.3.6替换gcc4.1.1新买的DELL的服务器,radhat7装不上,所以借了张Fedora 6,装完之后也碰到很多问题,那是前话了,这里不表。
最近遇到一个问题,用系统自带的Fedora gcc编译我们的工作环境之后,有一些脚本运行之后会出现core dump。分析下来,估计是Fedora gcc编译版本太高的缘故。所以决定找个低版本的Fedora gcc编译来安装。查了很多资料,决定采用交叉编译的方式,用Fedora gcc4编译Fedora gcc3的源码。
比较有价值的是这篇Linux上安装Fedora gcc编译器过程。
***次下了一个3.3的版本,按步骤装下来在make的时候出现一个../../gcc-3.3/gcc/read-rtl.c:662: error: invalid lvalue in increment的错误,又继续查资料,发现有人说版本太低会出错,有人编译成功3.3.6的版本。
于是又下了3.3.6重新Fedora gcc编译,但是make到后面又出现错误:f/com.c:11061: error: conflicting types for 'ffecom_gfrt_basictype'。这次再找资料也没找到什么好的解决办法。好像是说要打什么补丁,但是因为前面的资料里面说安装很顺利,没遇到什么问题,应该也不需要打补丁。所以我回过头来又试着在配置的时候加了个参数:--enable-languages=c,c++,这次再编译竟然就顺利完成了。
接下来的工作是用新编好的3.3.6的版本替换原来的高版本。用了一种觉得比较简单的办法,不知道还有没有更好更安全的办法:把/usr/bin中的Fedora gcc编译改名为gcc4,然后ln -s /usr/local/gcc-3.3.6/bin/gcc gcc。这样编译的时候就会使用3.3.6中的Fedora gcc编译,而原来的Fedora gcc编译也备份了,到时候有需要的时候可以很轻松地改回来。顺便也把g++和gcov也做了同样的处理。
不过现在还不知道这个低版本的Fedora gcc编译是否能满足需求,等以后慢慢验证吧。
【编辑推荐】