Linux的多个GCC版本


我目前使用的是Ubuntu的8.04,因为最近一直在升级Linux,导致目前我的GCC也变高了,目前是4.2.3。当我编译以前手头上的CROSSTOOL时出现这样的提示:

checking for a BSD-compatible install... /usr/bin/install -c
checking whether ln -s works... yes
checking for pwd... /bin/pwd
checking for arm-linux-gcc... gcc
checking version of gcc... 4.2.3, bad
checking for gnumake... no
checking for gmake... no
checking for make... make
checking version of make... 3.81, ok
configure: error:
*** These critical programs are missing or too old: gcc
*** Check the INSTALL file for required versions.

所以需要把我目前的GCC版本按到以前的状态3.4了。首先,你需要去你的usr/bin/下去看看有没有gcc-3.4这样文件,如果没有的话,就安装一下吧:

apt-get install gcc-3.4

之后,你需要把usr/bin/目录下的gcc文件删除掉或者避免意外发生,可以把它命名为gcc.bak。这里需要说明的如果你不删除的话,你会发现你使用ln -s /usr/bin/gcc-3.4 /usr/bin/gcc总是不起作用。实际上你在用gcc -v查看当前版本时,就一直使用的usr/bin/gcc。而ln -s /usr/bin/gcc-3.4 /usr/bin/gcc的目的就是为了生成3.4版本的gcc。一句话,你只需要执行:

rm /usr/bin/gcc
ln -s /usr/bin/gcc-3.4 /usr/bin/gcc

然后再gcc -v就可以看到当前版本就是3.4了。如果你想再使用当前的4.2.3的话,就使用同样的方法:

rm /usr/bin/gcc
ln -s /usr/bin/gcc-4.2.3 /usr/bin/gcc

再gcc -v来确定一下版本就知道了。祝你好运。 

相关内容