Windows下CLion配置Android NDK编译环境
这里记录怎么在Windows下的CLion中配置Android NDK,以备不时之需,也希望能帮到他人。
1.安装MinGW
下载安装文件(链接https://download.csdn.net/download/ICANOFCSU/12093062,https://download.csdn.net/download/justinanyes/10205184,这里是MinGW5.1.6),为了省事,把所有的组件全部安装上。
注意:这里一定要安装MinGW,不要安装Cygwin!!!我之前就是在Cygwin上折腾了一下午,最终失败。
2.配置Toolchains
这里使用的CLion版本为2019.3。从File>>Settings>>Build,Execution,Deployment进入Toolcains设置。然后添加一个MinGW配置,设置好前面安装的MinGW主目录,CMake路径选择Bundled,再设置Make,gcc,g++,Debugger为NDK中相应的可执行程序路径。示例中使用的NDK版本为r16b,其他版本也一样,请根据自己的实际情况设置。
注意:虽然Cygwin也可以在Windows下作为CLion的编译工具链,但这里不能选择,因为它会导致编译android_toolchain.cmake脚本中操作系统环境(MinGW下为“Windows”,而Cygwin下为“Cygwin”)判断出错,从而某些文件的路径设置出错,编译不起来。
3.配置cmake
在新建一个CMake配置,Name随便,Toolchain选择上一步创建的工具链,CMake options中输入以下主要宏定义:
-DCMAKE_TOOLCHAIN_FILE="xxx\ndk_home\build\cmake\android_toolchain.cmake"
-DANDROID_TOOLCHAIN=gcc
-DANDROID_NATIVE_API_LEVEL=android-14
-DANDROID_ABI=armeabi-v7a
-DANDROID_CPP_FEATURES="rrti exceptions"
-DANDROID_ARM_NEON=TRUE
-DANDROID_STL=gnustl_static
其中CMAKE_TOOLCHAIN_FILE最重要,用于指定android_toolchain.cmake(位于NDK主目录\build\cmake\下)路径,其他以ANDROID开头的宏的含义和用途在android_toolchain.cmake的开头有说明。如下:
# Configurable variables.
# Modeled after the ndk-build system.
# For any variables defined in:
# https://developer.android.com/ndk/guides/android_mk.html
# https://developer.android.com/ndk/guides/application_mk.html
# if it makes sense for CMake, then replace LOCAL, APP, or NDK with ANDROID, and
# we have that variable below.
# The exception is ANDROID_TOOLCHAIN vs NDK_TOOLCHAIN_VERSION.
# Since we only have one version of each gcc and clang, specifying a version
# doesn't make much sense.
#
# ANDROID_TOOLCHAIN
# ANDROID_ABI
# ANDROID_PLATFORM
# ANDROID_STL
# ANDROID_PIE
# ANDROID_CPP_FEATURES
# ANDROID_ALLOW_UNDEFINED_SYMBOLS
# ANDROID_ARM_MODE
# ANDROID_ARM_NEON
# ANDROID_DISABLE_NO_EXECUTE
# ANDROID_DISABLE_RELRO
# ANDROID_DISABLE_FORMAT_STRING_CHECKS
# ANDROID_CCACHE
4.编译打包
打开CMake工程并加载,选择之前的配置,点击小锤子即开始NDK编译过程,编译产物位于debug目录下。
上一篇: 算法笔记(1)- 并查集
下一篇: Java学习笔记之异常