我正在使用 android NDK r8d 和 eclipse Juno。我正在尝试在 Eclipse 的原生 android 项目中编译使用 C++11 之类的 C++ 代码,如mutex
, lock_guard
,shared_ptr
等。
我收到如下错误:
“错误:‘shared_ptr’不是‘std’的成员”
“致命错误:互斥锁:没有这样的文件或目录”
我在这里遇到了一个类似的问题。它似乎对他们有用,但那里的解释并不完整,所以我无法让它为我工作。
我添加"NDK_TOOLCHAIN_VERSION=4.7"
到Application.mk
和文件中"LOCAL_CFLAGS += -std=c++11"
。Android.mk
尽管如此,它仍然无法编译。
在上面的链接中它说:
“确保标准库包含路径(如 /android-ndk-r8d/sources/cxx-stl/gnu-libstdc++/4.7/include)在目标设置中。”
我如何以及在哪里插入它?
我还在 eclipse IDE 中遇到错误(在源代码上,在编译之前)。我知道我应该定义"__GXX_EXPERIMENTAL_CXX0X__"
来解决它们,但我只是不知道把它放在哪里。
因此,如果有人可以发布一个完整解释如何编译和使 eclipse 与 C++11 一起工作的答案,那就太好了。