2015-02-11 69 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