开始吧...
1. 错误 dalvik/vm/native/dalvik_system_Zygote.c:191:19: error: storage size of ‘rlim’ isn’t known
struct rlimit rlim;
解决方法:添加头文件#include <sys/resource.h>到以下文件
dalvik/vm/native/dalvik_system_Zygote.cpp
2. make: *** [out/host/linux-x86/obj/EXECUTABLES/mksnapshot_intermediates/src/accessors.o] 错误 1
在网上查资料,网上是说因为GCC 和 G++ 版本太高,应该使用 gcc-4.4 和 g++-4.4,通过以下命令查看我自己的版本
gcc --version (结果为4.8)
g++ --version (结果为4.8)
解决方法很简单,安装 gcc 4.4 和 g++ 4.4
sudo apt-get install gcc-4.4 g++-4.4 g++-4.4-multilib
安装之后在 /usr/bin下面就会有 gcc-4.4 和 g++-4.4,然后把原来gcc 和 g++ 的符号链接删除,重新建立其指向我们安装的版本:
sudo rm -f /usr/bin/gcc
sudo rm -f /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++
3. external/srec/tools/thirdparty/OpenFst/fst/lib/cache.h:136:11: note: use ‘this->SetState’ instead
make: *** [out/host/linux-x86/obj/EXECUTABLES/grxmlcompile_intermediates/grxmlcompile.o] Error 1
解决方法:
cd external/srec
wget "https://github.com/CyanogenMod/android_external_srec/commit/4d7ae7b79eda47e489669fbbe1f91ec501d42fb2.diff"
patch -p1 < 4d7ae7b79eda47e489669fbbe1f91ec501d42fb2.diff
rm -f 4d7ae7b79eda47e489669fbbe1f91ec501d42fb2.diff
4. In file included from system/extras/ext4_utils/output_file.c:30: /usr/include/zlib.h:34: fatal error: zconf.h: 没有那个文件或目录 compilation terminated.
解决方法:原因是zlib1g-dev有个头文件修改了路径,及zconf.h放到了/usr/include/x86_64-linux-gnu/,所以将其拷贝到/usr/include/下即可了
5. make: *** [out/target/product/generic/obj/STATIC_LIBRARIES/libwebcore_intermediates/WebCore/HTMLNames.h] 错误 2
解决方法:安装 sudo apt-get install libswitch-perl
6. 运行 out/host/linux-x86/bin$ emulator 会出错
使用 Android SDK 的 emulator 可以启动虚拟机:
emulator -kernel /develop/sources/android/2.3.5/prebuilt/android-arm/kernel/kernel-qemu -sysdir /develop/sources/android/2.3.5/out/target/product/generic -system system.img -data userdata.img
如果加上 -ramdisk ramdisk.img会出错,不知道什么原因,需要继续研究。
比较不错的参考链接:
http://www.cnblogs.com/kobe8/p/3998379.html
http://www.cnblogs.com/webapplee/p/3946506.html
http://blog.csdn.net/jiangwei0910410003/article/details/37988637
http://www.omitol.com/archives/65.html