编译android源码
1.设置android环境变量
2.设置一下编译器的高速缓存
/media/ma/软件/Download/Android源码/Android源码/android4.2.2/android/prebuilts/misc/linux-x86/ccache
chmod 777 ccache
apt-get install ccache
ccache -M 50G
3.导入一些编译Android源码所需的环境变量和其它参数
执行source build/envsetup.sh4.出错解决
1.权限不够
解决方案:
安装:sudo apt-get install ntfs-config sudo apt-get install gksu 建立挂载
2./bin/bash:bison:未找到命令
解决方案:$ sudo apt-get install bison
3./bin/bash: xsltproc: 未找到命令
解决方案:sudo apt-get install xsltproc
4.prebuilts/tools/gcc-sdk/g++: 行 40: prebuilts/tools/gcc-sdk/../../gcc/linux-x86/host/i686-linux-glibc2.7-4.6/bin/i686-linux-g++: 没有那个文件或目录
解决方案:sudo apt-get install gcc-multilib
5.make: *** [out/host/linux-x86/obj/EXECUTABLES/aidl_intermediates/aidl_language_l.cpp] 错误 127
解决方案:sudo apt-get install flex
6.make: *** [out/host/linux-x86/obj/EXECUTABLES/acp_intermediates/acp.o] 错误 1
在32位下编译,直接make就可以了
在64位下编译,会出一些错误,需要额外安装一些包:
A, 没有gnu/stubs-32.h文件:
/usr/include/gnu/stubs.h:7:27: error: gnu/stubs-32.h: 没有该文件或目录
make: *** [out/host/linux-x86/obj/EXECUTABLES/acp_intermediates/acp.o] 错误 1
解决方法:
确定你的系统是x86_64 GNU/Linux
# uname -a
Linux mm-desktop 2.6.27-9-generic #1 SMP Thu Nov 20 22:15:32 UTC 2008 x86_64 GNU/Linux
安装libc6-dev-i386
sudo apt-get install libc6-dev-i386
B。找不到-lstdc++
/usr/bin/ld: cannot find -lstdc++
解决方法:
安装 g++-multilib,lib32z1-dev 和 lib32ncurses5-dev
apt-get install g++-multilib lib32z1-dev lib32ncurses5-dev
7.sh: gperf: not found
calling gperf failed: 32512 at ./makeprop.pl line 140.
方法:sudo apt-get install gperf
8.make:***[out/target/product/generic/obj/STATIC_LIBRARIES/libext_intermediates/libxt_connmark.o]Error1
分析原因:我是在windows下用rar解压tar包的
解决办法:到linux/netfilter/下发现确实没有xt_connmark.h文件,重新在linux下解压源码的tar包
9.make: *** [out/target/product/generic/system/etc/apns-conf.xml] 错误 127
解决:sudo apt-get install libxml2-utils
更多相关文章
- Android(安卓)高工面试必考题(二):Android的事件分发机制设计与实现
- 手把手的教你成为Android高手(视频+源码+文档)
- Android(安卓)ADB over TCP/IP 及在Mini6410开发板上运行Hellowo
- Android主流三方库源码分析(三、深入理解Glide源码)
- Android(安卓)7.1.1系统源码下载、编译、刷机-Nexus 6实战
- 海康威视视频监控demo 源码+库文件
- Android作业:一个3D相册源码
- Android网络收音机项目(源码实例分享)
- Android中结合OrmLite for android组件对SQLite的CRUD(增删改查)