如何更改Ubuntu gcc、g++默认编译器的版本

发布时间:2020-05-26编辑:脚本学堂
本文介绍下,在ubuntu系统中,更改gcc、g++默认编译器的版本的方法,感兴趣的朋友可以参考学习下,希望对大家有一定的帮助。

本节内容:
更改Ubuntu gcc、g++默认编译器的版本

升级Ubuntu到11.10,但在编译Android时出错了。
这个Android在升级系统之前编译是没有错误的,对比发现升级到Ubuntu 11.10后gcc、g++的版本都是4.6.1。
而升级之前的版本是4.4.6。

解决方法:
更改Ubuntu gcc、g++默认编译器版本。

这里分享两种更改Ubuntu gcc、g++默认编译器版本的办法。

方法一:
首先,检查下Ubuntu都装了哪些版本的gcc
命令:

复制代码 代码示例:
ls /usr/bin/gcc* -l
lrwxrwxrwx 1 root root      7 2011-08-14 15:17 /usr/bin/gcc -> gcc-4.6
-rwxr-xr-x 1 root root 224544 2011-10-06 05:47 /usr/bin/gcc-4.4
-rwxr-xr-x 1 root root 237072 2011-09-17 17:25 /usr/bin/gcc-4.5
-rwxr-xr-x 1 root root 302104 2011-09-17 05:43 /usr/bin/gcc-4.6

默认安装的是gcc-4.6,现在来改成gcc-4.4。

删除gcc-4.6的软连接文件/usr/bin/gcc。(只是删除软连接)

命令:

复制代码 代码示例:
sudo rm /usr/bin/gcc

然后,创建一个软连接,指向gcc-4.4。

命令:

复制代码 代码示例:
sudo ln -s /usr/bin/gcc-4.4 /usr/bin/gcc

用命令:gcc -v  显示如下:

使用内建 specs。

目标:i686-linux-gnu

配置为:

复制代码 代码示例:
../src/configure -v --with-pkgversion='Ubuntu/Linaro 4.4.6-11ubuntu2' --with-bugurl=file:///usr/share/doc/gcc-4.4/README.Bugs --enable-languages=c,c++,fortran,objc,obj-c++ --prefix=/usr --program-suffix=-4.4 --enable-shared --enable-linker-build-id --with-system-zlib --libexecdir=/usr/lib --without-included-gettext --enable-threads=posix --with-gxx-include-dir=/usr/include/c++/4.4 --libdir=/usr/lib --enable-nls --with-sysroot=/ --enable-clocale=gnu --enable-libstdcxx-debug --enable-objc-gc --enable-targets=all --disable-werror --with-arch-32=i686 --with-tune=generic --enable-checking=release --build=i686-linux-gnu --host=i686-linux-gnu --target=i686-linux-gnu

线程模型:posix

gcc 版本 4.4.6 (Ubuntu/Linaro 4.4.6-11ubuntu2)

用同样的方法更改g++的默认版本。

方法二:
修改默认gcc和g++为4.4的版本
 

复制代码 代码示例:
sudo update-alternatives --remove-all gcc
sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-4.4 40
sudo update-alternatives --install /usr/bin/g++ g++ /usr/bin/g++-4.4 40

配置默认的gcc和g++:
 

复制代码 代码示例:
sudo update-alternatives --config gcc
sudo update-alternatives --config g++