Andriod源码编译时的GCC版本问题解决

csuhanshuai 2012-03-04

编译MTK6516的Android代码时,需要用到Gcc_4.1.2(MTK指定了这个版本的Gcc)。

而我的ubuntu10.04自带版本为Gcc_4.4.3。

处理步骤如下:

1.首先下载所需的文件,我下载deb包,地址http://archive.ubuntu.com/ubuntu/pool/universe/g/gcc-4.1/

2.Gccdeb包存在依赖关系,安装顺序如下

sudo dpkg -i gcc-4.1-base_4.1.2-27ubuntu1_amd64.deb
sudo dpkg -i cpp-4.1_4.1.2-27ubuntu1_amd64.deb
sudo dpkg -i cpp-4.1-doc_4.1.2-27ubuntu1_all.deb
sudo dpkg -i gcc-4.1_4.1.2-27ubuntu1_amd64.deb
sudo dpkg -i gcc-4.1-multilib_4.1.2-27ubuntu1_amd64.deb
sudo dpkg -i gcc-4.1-doc_4.1.2-27ubuntu1_all.deb
/*两个deb要一起输入,他们相互依赖,让系统自己处理*/
sudo dpkg -i g++-4.1_4.1.2-27ubuntu1_amd64.deb libstdc++6-4.1-dev_4.1.2-27ubuntu1_amd64.deb
sudo dpkg -i g++-4.1-multilib_4.1.2-27ubuntu1_amd64.deb

3.这时,系统里面会有2个版本的GCC,缺省的还是原来默认的GCC4.4.3,我们可以更改系统的默认配置。

sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-4.4 40
sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-4.1 30

设置默认编译器,如下

sudo update-alternatives --config gcc
有 2 个选项可用于替换项 gcc (提供 /usr/bin/gcc)。

  选择       路径            优先级  状态
------------------------------------------------------------
* 0            /usr/bin/gcc-4.4   40        自动模式
  1            /usr/bin/gcc-4.1   30        手动模式
  2            /usr/bin/gcc-4.4   40        手动模式

选择“1”。

4.此时在命令行输入

gcc --version

可以看到版本信息已经变为

gcc (GCC) 4.1.3 20080704 (prerelease) (Ubuntu 4.1.2-27ubuntu1)
Copyright (C) 2006 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

相关推荐