我希望我的可执行文件能够调用类似 libcuils 支持的函数property_get(...)
。
在 Android.mk 我有:
LOCAL_LDLIBS:=-lcutils
ndk-build
返回:未定义的引用property_get
添加 'default.properties'target=android-9
并没有帮助。
我在 ubuntu 上使用 android-ndk-r8e。
我希望我的可执行文件能够调用类似 libcuils 支持的函数property_get(...)
。
在 Android.mk 我有:
LOCAL_LDLIBS:=-lcutils
ndk-build
返回:未定义的引用property_get
添加 'default.properties'target=android-9
并没有帮助。
我在 ubuntu 上使用 android-ndk-r8e。
libcutils.so
不是官方原生 API 的一部分,它不与 NDK 一起分发。您可以从任何设备甚至模拟器中提取它,而且它在各个版本和模组中都相当稳定,所以我不会阻止您使用它。
另一方面,链接器通常会说
ld: error: cannot find -lcutils
collect2: ld returned 1 exit status
如果它说undefined reference
,它可能在其搜索路径的某个地方找到了 libcutils.so。也许,这是一个错误的图书馆。也许,您LOCAL_LDLIBS
在 Android.mk 中设置了一个静态库,因此它被忽略了。
LOCAL_LDLIBS
仅适用于
include $(BUILD_SHARED_LIBRARY)
或者
include $(BUILD_EXECUTABLE)