找不到alsa / asoundlib.h

时间:2011-05-02 23:16:38

标签: android build alsa

在构建我的Android源代码时出现此错误

  

找不到alsa / asoundlib.h

我已经安装了libasound2-dev。 asoundlib.h存在于usr / include / alsa /文件夹中 但仍然是建造者无法找到它。

谁能告诉我为什么编译器无法找到asoundlib.h? 如何将/ usr / include添加到头文件的搜索路径中?

3 个答案:

答案 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)

如果您使用的是debianubuntu,那么运行apt-get install libasound2-dev就可以解决问题。它会安装所需的头文件,尽管您可能会遇到某些版本的不兼容性。 (在这种情况下,解决方案是回到源头并找到它。)