今天上午上机,任务是在Linux下熟悉以源码方式的软件安装,我们的目的就是将GCC4.1.1以源码的方式安装成功。
这个东东之前也装过。是边在网上查边装的,装完能用就行了,也没总结过。今天做完后想总结一下,便于以后用。
首先呢,就是下源码了, 到这儿下一个,我们实验要求是下载这个,所以我就用的它,完全可以下一个最新的玩玩嘛,下完后解压,tar -xvjf gcc-4.1.1.tar.bz2.默认会生成一个gcc-4.1.1的目录。到里面找到install文件夹下打开index.html这上面有详细的安装过程。不过是英文的,它分为五个步骤。第一是安装所需要的工具了,这个嘛,我没看,我的原则是直接安装,少什么安什么(用yum install 我发现几乎都可以搞定了,不过呢这样的话自己省事了,可不知道正真做了什么),在这儿只说一下安装gcc的主要过程,其他的遇到了在说吧。
第二:配置,之前,先建立连个文件夹。一个是用来存放暂时编译的临时文件,这个也可以不建,他就会在源文件中生成,这个不好,一般不再源文件中生成编译的中间结果。我是在与源码的文件夹平级的地方建立一个gcc-build。 mkdir gcc-build。另一个就是你的GCC要安装到的目标文件夹。它是在make install后将生成的东东放到这里,以后用的话就会在这个文件夹下找的。我在/usr/local下 makedir gcc4.1.1。然后进入gcc-build下开始配置吧。
../gcc-4.1.1/configure --prefix=/usr/local/gcc4.1.1 --enable-threads --disable-checking --enable--long-long --host=i386-RedHat-Linux --with-system-zlib --enable-languages=c,c++ ,这些就不说了,根据自己需要配置就行了。
如果顺利的话他在检查完之后不会出现error的。
第三步:make了,想快点的话可以加上 -jn,你代表开几个线程同时编译。这个过程很长,我用了一个多小时的时间才完成,幸好没出error,我同学的比我的时间长,结果在我的诅咒下,呵呵,出现了两个error,彻底崩溃,一上午的辛苦白费了。
第四:make install
第五:链接,要想使用GCC 4.1.1的gcc等命令,简单的方法就是把它的安装路径/bin放在环境变量PATH中。也可不用这种方式,而是用符号连接的方式实现,这样做的好处是我仍然可以使用系统上原来的旧版本的GCC编译器。
首先,查看原来的gcc所在的路径 which gcc 上述命令显示:/usr/bin/gcc。因此:
cd /usr/bin
ln -s /usr/local/gcc4.1.1/bin/gcc gcc4
ln -s /usr/local/gcc4.1.1//bin/g++ g++4
ln -s /usr/local/gcc4.1.1/bin/gcj gcj4
这样,就可以分别使用gcc4、g++4来调用GCC,gcj4调用gcj了。而原来的gcc,g++,gcj仍然是原来版本的。
最后:库路径的设置库路径的设置
将/usr/local/gcc4.1.1/lib路径添加到环境变量LD_LIBRARY_PATH中,最好添加到系统的配置文件中,这样就不必要每次都设置这个环境变量了.在RH Linux下可以直接在命令行上执行或者在文件/etc/profile中添加下面一句:
setenv LD_LIBRARY_PATH /usr/local/gcc4.1.1/lib:$LD_LIBRARY_PATH。
到此,大功告成,试试吧,写个hello wold 测试一下呗。