装了比较新的ubuntu11.10,但是编译android4.0源码出现了各种问题,总结了一下。
有的库会提示有替换版本,就用系统提示的版本就ok了。
我用的jdk1.6.0.31
下载地址: jdk-6u31-linux-x64.bin
Ubuntu 11.10的gcc是4.6版本,这里我们需要换成低版本,具体方法如下:
sudo apt-get install g++-4.4
装完后进入到/usr/bin目录下,执行:
ls-l gcc*
会显示以下结果
lrwxrwxrwx 1 root root 7 2011-10-29 09:11 gcc -> gcc-4.6
-rwxr-xr-x 1 root root 224544 2011-10-06 05:47 gcc-4.4
-rwxr-xr-x 1 root root 302104 2011-09-17 05:43 gcc-4.6
发现gcc链接到gcc-4.6, 需要将它改为链接到gcc-4.4,方法如下:
1 $sudo mv gcc gcc.bak
2 $sudo ln-s gcc-4.4 gcc
输出结果如下:
lrwxrwxrwx 1 root root 7 2011-08-14 15:17 g++ -> g++-4.6
-rwxr-xr-x 1 root root 228640 2011-10-06 05:45 g++-4.4
-rwxr-xr-x 1 root root 306200 2011-09-17 05:39 g++-4.6
需要将g++链接改为g++-4.4:
1 $sudo mv g++ g++.bak
2 $sudo ln -s g++-4.4 g++
再查看gcc和g++版本号:
gcc -v
g++ -v
均显示gcc version 4.4.6 ,说明gcc 4.4安装成功。
这里注意:
仍然需要安装一个格外包(这个是g++的一个依赖包,必须安装,不然编译会有问题)
sudo apt-get install g++-4.4-multilib
上面的文章中提到配置android环境的时候需安装配置jdk,下面总结一个小教程如下:
一:先将android官方配置过程走一遍。
http://source.android.com/source/initializing.html有的库会提示有替换版本,就用系统提示的版本就ok了。
二:下载安装jdk
注意: 最好用1.6.0.26之后的版本,要不然编译过程会出现内存溢出的问题;我用的jdk1.6.0.31
下载地址: jdk-6u31-linux-x64.bin
三:换用gcc与g++的较低版本
编译android源码最好使用gcc 4.4和g++4.4。Ubuntu 11.10的gcc是4.6版本,这里我们需要换成低版本,具体方法如下:
1. 安装gcc4.4 和g++4.4
sudo apt-get install gcc-4.4sudo apt-get install g++-4.4
装完后进入到/usr/bin目录下,执行:
ls-l gcc*
会显示以下结果
lrwxrwxrwx 1 root root 7 2011-10-29 09:11 gcc -> gcc-4.6
-rwxr-xr-x 1 root root 224544 2011-10-06 05:47 gcc-4.4
-rwxr-xr-x 1 root root 302104 2011-09-17 05:43 gcc-4.6
发现gcc链接到gcc-4.6, 需要将它改为链接到gcc-4.4,方法如下:
1 $sudo mv gcc gcc.bak
2 $sudo ln-s gcc-4.4 gcc
2. 同理,对g++也做同样的修改:
1 $ls-l g++*输出结果如下:
lrwxrwxrwx 1 root root 7 2011-08-14 15:17 g++ -> g++-4.6
-rwxr-xr-x 1 root root 228640 2011-10-06 05:45 g++-4.4
-rwxr-xr-x 1 root root 306200 2011-09-17 05:39 g++-4.6
需要将g++链接改为g++-4.4:
1 $sudo mv g++ g++.bak
2 $sudo ln -s g++-4.4 g++
再查看gcc和g++版本号:
gcc -v
g++ -v
均显示gcc version 4.4.6 ,说明gcc 4.4安装成功。
这里注意:
仍然需要安装一个格外包(这个是g++的一个依赖包,必须安装,不然编译会有问题)
sudo apt-get install g++-4.4-multilib