您的位置:首页 > 移动开发 > Android开发

Android 源码编译环境搭建

2012-11-07 10:58 435 查看
编译环境的搭建主要分为两个大步骤,在此做以记录

1.基础环境的准备

磁盘:需要6GB 以上(为以后可能会有新版本留了空间)

Linux系统:Ubuntu6.06以上

2.工具的准备

Java环境:JDK1.5以上(最好不要使用1.7,编译时会有很多潜在问题)

命令:sudo apt-get install sun-java6-jdk

如提示找不到软件,可以如下方式添加源再试

$ sudo add-apt-repository "deb http://us.archive.ubuntu.com/ubuntu/ hardy multiverse"

$ sudo apt-get update

$ sudo apt-get install sun-java6-jdk

GIT:GIT1.5.4以上。如果有现成源码,并且不想通过GIT对源码做以更新,则可以忽略此步

开发包:flex,bison,gperf,libsdldev,libesddev,libwxgtk2.6-dev,build-essential,zip,cuil,valgrind

命令:sudo apt-get install gnupg valgrind flex bison gperf libsdl-dev libesd0-dev libwxgtk2.6-dev build-essential zip curl libncurses5-dev zlib1g-dev

常见问题:

1.注意如果是安装的11.04以后的版本,GCC的版本Ubuntu默认会比较高,编译会出现

rameworks/base/libs/utils/RefBase.cpp: 在成员函数‘void android::RefBase::weakref_type::trackMe(bool, bool)’中:

frameworks/base/libs/utils/RefBase.cpp:483:67: 错误: 将‘const android::RefBase::weakref_impl’作为‘void android::RefBase::weakref_impl::trackMe(bool, bool)’的‘this’实参时丢弃了类型限定 [-fpermissive]

make: *** [out/host/linux-x86/obj/STATIC_LIBRARIES/libutils_intermediates/RefBase.o] 错误 1

解决方法:更换gcc、g++版本为4.4

                         sudo apt-get install gcc-4.4

                         sudo apt-get install g++-4.4

                         sudo rm -rf /usr/bin/gcc /usr/bin/g++

                         sudo ln -s /usr/bin/gcc-4.4 /usr/bin/gcc

                         sudo ln -s /usr/bin/g++-4.4 /usr/bin/g++
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: