找不到alsa / asoundlib.h

问题描述 投票:5回答:3

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

找不到alsa / asoundlib.h

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

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

android build alsa
3个回答
2
投票

我有问题,然后我找到了解决方案。在external / alsa-lib include中,它们具有alsa-util编译的所有库。但是alsa-util编译或其他alsa相关程序正在寻找alsa / * .h库,其中所有* .h都在include文件夹中。

在external / alsa-lib / include /中创建一个alsa文件夹然后复制所有需要的库应解决问题。


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。获得这些文件后,一切运作良好......

不知道在你的情况下这是否会成功,但也许这对你或其他人来说是“缺失的环节”......


0
投票

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

© www.soinside.com 2019 - 2024. All rights reserved.