【发布时间】:2019-10-18 05:49:08
【问题描述】:
为了演示这个问题,我做了一个最小的 CMakeLists.txt:
cmake_minimum_required(VERSION 3.12)
project(FlagsTest)
add_executable(myapp myapp.cpp)
我在 Android NDK 中使用工具链文件配置了这个 cmake 项目。使用忍者生成器,cmake缓存变量ANDROID_ABI设置为armeabi-v7a。软件和工具链的版本是:
- CMake:Windows 中的 3.12.3 和 3.14.6。
- Android NDK 和工具链文件:
C:/Users/my_name/AppData/Local/Android/Sdk/ndk/20.0.5594570/build/cmake/android.toolchain.cmake - 忍者:1.9.0
整个东西都成功配置和生成。但是,cmake 缓存变量 CMAKE_CXX_FLAGS_DEBUG、CMAKE_CXX_FLAGS_RELEASE、CMAKE_C_FLAGS_DEBUG 和 CMAKE_C_FLAGS_RELEASE都是空白。这导致 debug build 中没有 debug 符号,release build 中没有优化,这让我们很困扰。
目前,我通过从 cmake 命令行手动指定这些变量来解决问题。但是由于这些变量应该由cmake自动设置,我想知道这是cmake中的错误,还是Android SDK中的错误。
【问题讨论】:
标签: android cmake android-ndk