Android 使用RefBase或IBinder时由_原子引起的NDK编译错误
提前感谢你的帮助 我正在尝试制作一个NDK项目,并使用IBinder和RefBase(looper、sp、wp当然是必要的)。 但即使在链接之前,也会发生编译错误: arm-linux-androideabi-4.9/prebuild/linux-x86_64/lib/gcc/arm-linux-androideabi/4.9/include/stdatomic.h:40:9:错误:“_-Atomic”未命名类型 typedef(原子)(原子)Bool(原子); 那么stdatomic.h中的每个符号都无法识别 我使用了一些C++11标志,如下所示,并尝试了一些随机CFLAG: -D_GLIBCXX_USE_WCHAR_T-DUSE_CPUSETS -std=c++11-std=gnu++11-pthread-frti-feexceptions 我注意到stlport文件stdatomic.h没有包含其他头文件,所以我想应该有一个或多个编译宏 但是我是NDK构建的新手,希望有人能给我一些关于这个问题的建议 非常感谢!@ 你修好了吗 我也遇到了这个问题,最后通过将Android 使用RefBase或IBinder时由_原子引起的NDK编译错误,android,c++,c++11,makefile,android-ndk,Android,C++,C++11,Makefile,Android Ndk,提前感谢你的帮助 我正在尝试制作一个NDK项目,并使用IBinder和RefBase(looper、sp、wp当然是必要的)。 但即使在链接之前,也会发生编译错误: arm-linux-androideabi-4.9/prebuild/linux-x86_64/lib/gcc/arm-linux-androideabi/4.9/include/stdatomic.h:40:9:错误:“_-Atomic”未命名类型 typedef(原子)(原子)Bool(原子); 那么stdatomic.h中的每
NDK
更新为android-NDK-r12b
并在Application.mk
文件中设置APP\u PLATFORM:=android-23
解决了这个问题 你修好了吗
我也遇到了这个问题,最后通过将
NDK
更新为android-NDK-r12b
并在Application.mk
文件中设置APP\u PLATFORM:=android-23
解决了这个问题 您可能为libbinder和libutils包含了#标题,它们不是NDK的一部分。这需要格外小心。您的标题是如何组织的?我会检查它并向您发送反馈,很抱歉反应太晚。@Josefus.mv此问题的任何更新,因为我也面临同样的问题。。请您发布答案。@AlexCohn如果我使用libbinder&libutils,那么我需要注意什么?@Explore:简而言之,您不需要STL来处理系统库,例如libbinder。上面的编译错误与RefBase等人的依赖关系无关。您可能为libbinder和libutils包含了
头,它们不属于NDK的一部分。这需要格外小心。您的标题是如何组织的?我会检查它并向您发送反馈,很抱歉反应太晚。@Josefus.mv此问题的任何更新,因为我也面临同样的问题。。请您发布答案。@AlexCohn如果我使用libbinder&libutils,那么我需要注意什么?@Explore:简而言之,您不需要STL来处理系统库,例如libbinder。上面的编译错误与RefBase等人的依赖关系无关。