在构建我的Android源代码时出现此错误
找不到alsa / asoundlib.h
我已经安装了libasound2-dev。 asoundlib.h存在于usr / include / alsa /文件夹中 但仍然是建造者无法找到它。
谁能告诉我为什么编译器无法找到asoundlib.h? 如何将/ usr / include添加到头文件的搜索路径中?
答案 0 :(得分:2)
我遇到了问题然后我找到了解决方案。 在external / alsa-lib include中,它们具有alsa-util编译的所有库。但是alsa-util编译或其他alsa相关程序正在寻找alsa / * .h库,其中所有* .h都在include文件夹中。
在external / alsa-lib / include /中创建一个alsa文件夹然后复制所有需要的库应解决问题。
答案 1 :(得分:0)
您是否从Subversion存储库获取源代码?
我遇到了同样的问题,因为我从非官方的Subversion存储库中检查了源代码。所以我首先安装libasound2-dev
并将目录/usr/include/alsa
复制到目录external/qemu/alsa
,就像你和Peter Ju所提议的那样。但之后发生了另一个错误:
make: *** No rule to make target 'prebuilt/linux-x86/sdl/lib/libSDL.a', needed by 'out/host/linux-x86/obj/STATIC_LIBRARIES/libSDL_intermediates/libSDL.a'. Stop.
经过一些研究后,我发现prebuilt
文件夹中的某些静态库丢失了,因为Subversion ignores some specific file extensions。获得这些文件后,一切运行良好......
不知道在你的情况下这是否会成功,但可能是你或其他人的'缺失的链接'......
答案 2 :(得分:0)
如果您使用的是debian
或ubuntu
,那么运行apt-get install libasound2-dev
就可以解决问题。它会安装所需的头文件,尽管您可能会遇到某些版本的不兼容性。 (在这种情况下,解决方案是回到源头并找到它。)