2013-05-16 140 views
1

我希望我的可執行文件能夠調用libcuils支持的函數 - 如property_get(...)將libcutils鏈接到本機可執行文件

在Android.mk我: LOCAL_LDLIBS:=-lcutils

ndk-build回報: 未定義參考property_get

添加 'default.properties' 與target=android-9沒有幫助。

我在ubuntu上使用android-ndk-r8e。

回答

2

libcutils.so不是官方原生API的一部分,它不與NDK一起發佈。你可以從任何設備或者甚至是仿真器中獲得它,並且它在版本和mod中是合理穩定的,所以我不會阻止你使用它。

在另一方面,連接器通常會說

ld: error: cannot find -lcutils 
collect2: ld returned 1 exit status 

如果說undefined reference,它可能發現libcutils.so某處的搜索路徑。也許,這是一個錯誤的圖書館。也許,你爲你的Android.mk中的靜態庫設置了LOCAL_LDLIBS,因此它被忽略。

LOCAL_LDLIBS僅供

include $(BUILD_SHARED_LIBRARY) 

include $(BUILD_EXECUTABLE) 
+0

關於最後一節相關的,我知道,我以建設包括$(BUILD_EXECUTABLE)。 我會嘗試你的想法(從我的設備中複製libcutils)'會讓你知道結果。謝謝 – Bush

+0

你以前從哪裏得到libcutils.a? –

+0

我沒有。第一次:) – Bush

相關問題