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源码编译错误小结的主要内容,如果未能解决你的问题,请参考以下文章