文章目录
- 一、报错信息
- 二、解决方案
一、报错信息
使用 Visual Studio 2019 编译 Android NDK 项目 , 报错如下 :
代码语言:javascript复制已启动生成…
1>------ 已启动生成: 项目: native, 配置: Debug ARM ------
1>ANDROID_HOME=D:\MicrosoftAndroidSDK25
1>ANT_HOME=D: 01_Develop 17_Microsoft Visual Studio2019CommunityAppsapache-ant-1.9.3
1>JAVA_HOME=C:Program FilesAndroidjdkmicrosoft_dist_openjdk_1.8.0.25
1>NDK_ROOT=D:\MicrosoftAndroidNDK64android-ndk-r16b
1>json_reader.cpp
1>jsonjson_reader.cpp(1129,14): error : cannot use 'throw' with exceptions disabled
1> if (!ok) throw std::runtime_error(reader.getFormatedErrorMessages());
1> ^
1>1 error generated.
1>已完成生成项目“native.vcxproj”的操作 - 失败。
========== 生成: 成功 0 个,失败 1 个,最新 0 个,跳过 0 个 ==========
二、解决方案
在项目属性中设置 " 启动 C 异常 " 项为 " 是 ( -fexception ) " 选项 ;
如果使用 Android.mk 构建项目 , 可以添加 LOCAL_CPP_FEATURES = exceptions
或 LOCAL_CPPFLAGS = -fexceptions
配置 ;
也可以在 Application.mk 中配置 APP_CPPFLAGS = -fexceptions
;