2017-08-07 82 views
0

我必须从一个文件填充CMake变量缓存。 我给defaultConfig.externalNativeBuild.cmake.arguments('-C options.cmake')添加了一个参数。如何在Android Studio(gradle)中使用CMake -C选项?

不过,我得到这个:

17:05:13.520 [生命周期] [org.gradle.api.Project]初始加载缓存文件options.cmake 17:05:13.521 [生命周期] [有机gradle.api.Project] CMake错误:处理文件时出错:options.cmake

该文件与build.gradle位于同一目录中。 我试图提供绝对路径(在projectDir变量的帮助下),但它没有改变任何东西。

简单再生产

创建Android Studio中的空Android应用程序。 在所有MyApplication /应用程序添加一个简单的CMakeLists.txt文件:

cmake_minimum_required(VERSION 3.0) 
project(hello) 

在同一个文件夹中添加一个简单的options.cmake文件:

set(foo "bar") 

请注意,这是CMake的确定:

cd MyApplication/app && mkdir bld && cd bld 
cmake -C ../options.cmake .. 

现在,通过右键单击该项目导入CMakeLists.txt,然后选择'使用Gradle链接C++项目'

你的build.gradle现在应该有这样的:

externalNativeBuild { 
    cmake { 
     path 'CMakeLists.txt' 
    } 
} 

什么我想现在做的是将在defaultConfig如下:

externalNativeBuild { 
    cmake { 
     arguments "-C ${projectDir}/options.cmake" 
    } 
} 

但是,这是行不通的。任何其他想法来填充CMake缓存?

+1

后options.cmake'看什么的'的内容是怎样的? – arrowd

+0

尽可能简单: set(foo“bar”) – Jacek

+0

尝试'set(foo“bar”CACHE )''。 – arrowd

回答

0

原来是相当简单:

不要把空间“-C”

相关问题