【Android Studio cmake突然没有语法高亮】人生必须的知识就是引人向光明方面的明灯。这篇文章主要讲述Android Studio cmake突然没有语法高亮相关的知识,希望能为你提供帮助。
NDK开发中,build.gradle
中临时添加了-fnoexception
编译选项:
externalNativeBuild {
cmake {
cppFlags '
-std=c++11 -fexceptions'
//!!!这里是新增的
arguments '
-Dandroid_PLATFORM=android-21'
,
'
-DCMAKE_BUILD_TYPE="
Release'
,
'
-DANDROID_ARM_NEON=ON'
,
'
-DANDROID_STL=c++_shared'
//cppFlags '
-std=c++11'
//arguments '
-DANDROID_TOOLCHAIN=clang'
,
//'
-DANDROID_STL=c++_static'
//cppFlags "
-std=c++11 -fexceptions"
}
}
结果,点击
sync now
之后,CMake脚本都失去了高亮,并且报错提示clang++没法识别-fnoexception。检查发现,是CMake脚本中设定了CMAKE_CXX_FLAGS
的值里面有-fno-exceptions
导致的,去掉即可:#SET (CMAKE_CXX_FLAGS "
${CMAKE_CXX_FLAGS} -fno-rtti -fno-exceptions -fno-short-enums -Werror=non-virtual-dtor"
)
SET (CMAKE_CXX_FLAGS "
${CMAKE_CXX_FLAGS} -fno-rtti -fno-short-enums -Werror=non-virtual-dtor"
)
也就是说,是build.gradle脚本和cmake的脚本中的C++编译选项,对于是否启用exception有冲突导致的。
推荐阅读
- Android中通过ImageSwitcher实现相册滑动查看照片功能(附代码下载)
- Android 真机测试网战大全
- LoadRunner性能测试-app压力测试
- 关于 Android 9.0 ClassNotFoundException: Didn't find class "org.apache.http.protocol.BasicHtt
- MyBatis Plus 自带BaseMapper解析
- Android中点击按钮获取string.xml中内容并弹窗提示
- logback源码阅读-Appender
- 利用kali生成木马远程控制安卓手机
- uniapp中小程序的授权操作