1.sudo gedit /etc/apt/sources.list
#add start region
deb http://archive.ubuntu.com/ubuntu/ natty main restricted universe multiverse
deb http://archive.ubuntu.com/ubuntu/ natty-security main restricted universe multiverse
deb http://archive.ubuntu.com/ubuntu/ natty-updates main restricted universe multiverse
deb http://archive.ubuntu.com/ubuntu/ natty-proposed main restricted universe multiverse
deb http://archive.ubuntu.com/ubuntu/ natty-backports main restricted universe multiverse
deb-src http://archive.ubuntu.com/ubuntu/ natty main restricted universe multiverse
deb-src http://archive.ubuntu.com/ubuntu/ natty-security main restricted universe multiverse
deb-src http://archive.ubuntu.com/ubuntu/ natty-updates main restricted universe multiverse
deb-src http://archive.ubuntu.com/ubuntu/ natty-proposed main restricted universe multiverse
deb-src http://archive.ubuntu.com/ubuntu/ natty-backports main restricted universe multiverse
deb http://archive.canonical.com/ubuntu/ natty partner
deb http://extras.ubuntu.com/ubuntu natty main
deb http://mirrors.163.com/ubuntu/ natty main restricted universe multiverse
deb http://mirrors.163.com/ubuntu/ natty-security main restricted universe multiverse
deb http://mirrors.163.com/ubuntu/ natty-updates main restricted universe multiverse
deb http://mirrors.163.com/ubuntu/ natty-proposed main restricted universe multiverse
deb http://mirrors.163.com/ubuntu/ natty-backports main restricted universe multiverse
deb-src http://mirrors.163.com/ubuntu/ natty main restricted universe multiverse
deb-src http://mirrors.163.com/ubuntu/ natty-security main restricted universe multiverse
deb-src http://mirrors.163.com/ubuntu/ natty-updates main restricted universe multiverse
deb-src http://mirrors.163.com/ubuntu/ natty-proposed main restricted universe multiverse
deb-src http://mirrors.163.com/ubuntu/ natty-backports main restricted universe multiverse
deb http://mirrors.sohu.com/ubuntu/ natty main restricted universe multiverse
deb http://mirrors.sohu.com/ubuntu/ natty-security main restricted universe multiverse
deb http://mirrors.sohu.com/ubuntu/ natty-updates main restricted universe multiverse
deb http://mirrors.sohu.com/ubuntu/ natty-proposed main restricted universe multiverse
deb http://mirrors.sohu.com/ubuntu/ natty-backports main restricted universe multiverse
deb-src http://mirrors.sohu.com/ubuntu/ natty main restricted universe multiverse
deb-src http://mirrors.sohu.com/ubuntu/ natty-security main restricted universe multiverse
deb-src http://mirrors.sohu.com/ubuntu/ natty-updates main restricted universe multiverse
deb-src http://mirrors.sohu.com/ubuntu/ natty-proposed main restricted universe multiverse
deb-src http://mirrors.sohu.com/ubuntu/ natty-backports main restricted universe multiverse
2.jdk
http://www.oracle.com/technetwork/java/javase/downloads/jdk6downloads-1902814.html
download
jdk-6u45-linux-x64.bin
sudo chmod 777 jdk-6u45-linux-x64.bin
sudo ./jdk-6u45-linux-x64.bin
3.
配置classpath,修改所有用户的环境变量
$ sudo gedit /etc/profile
在文件最后添加
#set java environment
JAVA_HOME=/jdk1.6.0_45
export JRE_HOME=/jdk1.6.0_45/jre
export CLASSPATH=.:$JAVA_HOME/lib:$JRE_HOME/lib:$CLASSPATH
export PATH=$JAVA_HOME/bin:$JRE_HOME/bin:$PATH
4. sudo apt-get update
sudo apt-get install git-core gnupg flex bison ccache gperf libsdl1.2-dev libesd0-dev libwxgtk2.6-dev build-essential zip curl libncurses5-dev zlib1g-dev valgrind
sudo apt-get install libc6-dev lib32ncurses5-dev x11proto-core-dev libx11-dev lib32readline-gplv2-dev lib32z1-dev libgl1-mesa-dev gcc-4.4 g++-4.4 g++-4.4-multilib g++-multilib g++-4.5-multilib mingw32 tofrodos python-markdown libxml2-utils xsltproc
5.bugs
http://www.blogjava.net/ZircoN/archive/2011/11/13/363452.html
问题2:
frameworks/base/libs/utils/RefBase.cpp:483:67: error: passing ‘const android::RefBase::weakref_impl’ as ‘this’ argument of ‘void android::RefBase::weakref_impl::trackMe(bool, bool)’ discards qualifiers [-fpermissive] make: *** [out/host/linux-x86/obj/STATIC_LIBRARIES/libutils_intermediates/RefBase.o] error 1
如下解决:
$ gedit frameworks/base/libs/utils/Android.mk
将下面一行
LOCAL_CFLAGS += -DLIBUTILS_NATIVE=1 $(TOOL_CFLAGS)
改成
LOCAL_CFLAGS += -DLIBUTILS_NATIVE=1 $(TOOL_CFLAGS) –fpermissive
问题3:
<command-line>:0:0: warning: "_FORTIFY_SOURCE" redefined [enabled by default]
<built-in>:0:0: note: this is the location of the previous definition cc1plus: all warnings being treated as errors
make: *** [out/host/linux-x86/obj/EXECUTABLES/obbtool_intermediates/Main.o] Error 1
问题原因:ubuntu 12.04中的gcc版本为4.6版本过高,需要降级为4.4
操作方法:
1). 查看gcc版本和g++版本
xumingtao@huaserver1:/usr/bin$ ls -l gcc*
lrwxrwxrwx 1 root root 7 Aug 30 19:26 gcc -> gcc-4.6
-rwxr-xr-x 1 root root 353216 Apr 16 07:37 gcc-4.6
xumingtao@huaserver1:/usr/bin$ ls -l g++*
lrwxrwxrwx 1 root root 7 Mar 14 04:05 g++ -> g++-4.6
-rwxr-xr-x 1 root root 357312 Apr 16 07:36 g++-4.6
2). 安装gcc和g++ 4.4版本
sudo apt-get install gcc-4.4 g++-4.4 g++-4.4-multilib
3). 修改gcc链接
sudo mv gcc gcc.bak
sudo ln -s gcc-4.4 gcc
xumingtao@huaserver1:/usr/bin$ ls -l gcc*
lrwxrwxrwx 1 root root 7 Sep 6 10:43 gcc -> gcc-4.4
-rwxr-xr-x 1 root root 259232 Apr 16 14:20 gcc-4.4
-rwxr-xr-x 1 root root 353216 Apr 16 07:37 gcc-4.6
lrwxrwxrwx 1 root root 7 Aug 30 19:26 gcc.bak -> gcc-4.6
4). 修改g++链接
sudo mv g++ g++.bak
sudo ln -s g++-4.4 g++
xumingtao@huaserver1:/usr/bin$ ls -l g++*
lrwxrwxrwx 1 root root 7 Sep 6 10:45 g++ -> g++-4.4
-rwxr-xr-x 1 root root 263328 Apr 16 14:18 g++-4.4
-rwxr-xr-x 1 root root 357312 Apr 16 07:36 g++-4.6
lrwxrwxrwx 1 root root 7 Mar 14 04:05 g++.bak -> g++-4.6
5).查看gcc和g++版本号
gcc-v
g++-v