我正在尝试在Android上编译C ++程序,但由于assert
未定义,因此无法编译。
我在网上找到了一些提示,但没有一个起作用:
我已经在myApplication.mk中设置了APP_OPTIM=debug
我已经通过参数覆盖设置了NDK_DEBUG=1
,例如
externalNativeBuild {
ndkBuild {
arguments "NDK_DEBUG:=1"
}
}
我已经在Android清单文件中设置了android:debuggable="true"
属性。
我已经设置了构建类型,并将debuggable
切换为true和false
buildTypes {
release {
debuggable true
...
}
debug {
debuggable true
...
}
}
我不知道还能做什么。断言仍未定义。我必须#define assert ;
一个空语句才能进行编译。我想用正确的方式做。
答案 0 :(得分:-1)
我也在使用CMake并能够使用assert。
我建议您尝试从android-studio'文件->新项目->选择项目(向下滚动并选择本机C ++)->下一步->下一步完成创建新项目。这将创建包含本机组件的android应用。修改本机组件的.cpp文件以使用assert(include assert.h)并查看其是否有效。
还要检查此帖子是否可以帮助您解决问题。 https://stackoverflow.com/a/9144080/4181904