2015-02-11 68 views
0

我想編譯一個C/C++代碼,它使用LLVM 6(僅僅是xcode的默認值)在Mac上編譯,並且在一個c = 99標誌中,但是在NDK中,我不想編譯(我收到了大量'未定義的錯誤引用')。Android NDK使用llvm-libC++ for APP_STL

在我Application.mk我有APP_STL是這樣的:

APP_STL := gnustl_shared 

在編譯時,這個調用此庫:(根據文檔)這個APP_STL

[armeabi] Prebuilt  : libgnustl_shared.so <= <NDK>/sources/cxx-stl/gnu-libstdc++/4.8/libs/armeabi/thumb/ 

理論上:= gnustl_shared應該會觸發LLVM庫,但似乎沒有這樣做。

然而,在相同的NDK的安裝文件夾我有其他的庫,其中被標記爲LLVM:

enter image description here

我怎麼能強迫APP_STL語句使用LLVM-的libC++或LLVM-的libC++ abi圖書館?

編輯:根據要求,這裏也是一個錯誤列表編譯時,我得到:

enter image description here

+0

可能是你想分享一些那些與我們的錯誤? – tofi9 2015-02-11 16:06:50

+0

我剛剛做了一個編輯,其中包含我得到的錯誤的短名單 – TooManyEduardos 2015-02-11 16:24:23

+0

1)錯誤似乎與您的Application.mk中缺少的一些'.cpp'文件相關(例如,實現'InteractionManager :: OnInteractionUpdate(...)')。 2)您可以通過設置值['APP_STL:= C++ _ shared'](http://mobilepearls.com/labs/native-android-api/ndk/docs/CPLUSPLUS-SUPPORT.html)來使用llvm的libc。此外,llvm-libC++只支持與clang編譯器結合使用 – tofi9 2015-02-11 16:43:00

回答

0

我想你需要

APP_STL := c++_static