android5.0源码编译错误小结

Posted zero9988

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了android5.0源码编译错误小结相关的知识,希望对你有一定的参考价值。

//------------------------2016.8.20--------------------

问题一:

make: *** No rule to make target `out/host/linux-x86/obj/STATIC_LIBRARIES/libgtest_host_intermediates/export_includes',

needed by

`out/host/linux-x86/obj/SHARED_LIBRARIES/libartd_intermediates/import_includes'.  Stop.

解决思路:

这个问题是我成功编译整个系统后,编译单个art模块mmm -B art 时出的错。

寻找out/host/linux-x86/obj/STATIC_LIBRARIES/libgtest_host_intermediates/这个路径,发现这个路径是空的。整个文件夹没有,再源码路径下搜索libgtest发现了external目录下有对应的文件目录。因此,mmm external/gtest    先编译gtest模块,发现果然生成了out/host/linux-x86/obj/STATIC_LIBRARIES/libgtest_host_intermediates/路径,再mmm art即可成功编译。


问题二:

undefined reference to ‘dwfl_module_……

提示某个android系统自带文件错误。某个成员变量或者方法未定义

解决思路:

一般是编译意外中断导致某个链接库没有编译完成。寻找方法所在的类所在的根目录。重新编译这个模块。

搜索dwfl,发现能再/external/elfutils目录里面找到,因此 mmm -B external/elfutils 即可




小结:

android源码编译错误一般通过搜索错误的相关关键字,查找错误发生的所在模块,如果对应模块无法编译,再寻找该模块所需要的模块进行编译。


//------------------------2016.8.20--------------------

以上是关于android5.0源码编译错误小结的主要内容,如果未能解决你的问题,请参考以下文章

android5.0 模块编译--art的模块编译小发现

Ubuntu16.04配置Android5.0编译环境

Android编译系统产品线

Android5.0+ Camera专栏终结

Android5.0+ Camera专栏终结

Android5.0+ Camera专栏终结