我如何为NDK工具链的gcc包含<bluetooth / bluetooth.h>

Dek*_*kel 2 c android bluetooth android-ndk

首先,我上次尝试将ac程序编译为linux-arm架构时遇到了问题,以便稍后在Android应用程序中使用它。我这样做是成功的,稍后我将写一篇有关如何使用NDK独立工具链的文章。

现在,我终于可以正常工作了,我正在尝试编译一个.c文件,其中包含一行“ include bluetooth / bluetooth.h”。当我尝试编译文件时,出现错误:“无此文件或目录”。我的makefile包含“ -libbluetooth”一词。标准的NDK gcc库没有蓝牙支持,因此根据互联网上对该主题的简短研究,我已经从设备中下载了“ libbluetooth.so”,这是我使其工作所需的。我仍然遇到相同的错误。

我很高兴知道是否有人遇到过同样的问题。谢谢你德克尔

Ale*_*ohn 5

您需要蓝牙库来链接您的程序。但是要编译它,您需要适当的头文件。libbluetooth.so不是Android官方API的一部分,但是幸运的是,如果您下载AOSP源代码树,则可以根据Google的说明找到它的源代码以及声明其公共(但非官方) API 的包含文件。实际上,您对树的一小部分感兴趣:。在那里您将找到包含文件。在您的中,您将有类似以下内容的一行:./external/bluetooth/bluez/libbluetooth/bluetooth.hAndroid.mk

LOCAL_C_INCLUDES += $(AOSP_ROOT)/external/bluetooth/bluez/lib
Run Code Online (Sandbox Code Playgroud)