Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/cmake/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
意外标记'CMAKE_INSTALL_PREFIX';_Cmake - Fatal编程技术网

意外标记'CMAKE_INSTALL_PREFIX';

意外标记'CMAKE_INSTALL_PREFIX';,cmake,Cmake,我正在尝试在openSuse 13.1上安装gflags CMake生成的安装文件没有问题,但当我尝试运行CMake_install.CMake时,出现了上述错误 它指的是: set(CMAKE\u INSTALL\u前缀)/usr/local”) 有人知道如何让它工作,以及为什么它生成了一个看起来不可用的文件吗?据我所知,你就是不能这样做: set(CMAKE_INSTALL_PREFIX "/usr/local") 要设置前缀并按预期工作,您需要在配置开始之前定义,甚至在cmake开始之前

我正在尝试在openSuse 13.1上安装gflags

CMake生成的安装文件没有问题,但当我尝试运行CMake_install.CMake时,出现了上述错误

它指的是:
set(CMAKE\u INSTALL\u前缀)/usr/local”)


有人知道如何让它工作,以及为什么它生成了一个看起来不可用的文件吗?

据我所知,你就是不能这样做:

set(CMAKE_INSTALL_PREFIX "/usr/local")
要设置前缀并按预期工作,您需要在配置开始之前定义,甚至在cmake开始之前:

cmake -DCMAKE_INSTALL_PREFIX="/usr/local" ..
另外,您必须知道,典型的构建过程是

cmake [..]
make
make install

那条线看起来不错。很可能错误出现在前一行(我们看不到)。如何以及为什么运行cmake_install.cmake?我不认为你should@tamas.kenez在某些情况下,您可能希望直接执行
cmake\u install.cmake
脚本。大多数情况下,如果您想为它提供参数,因此无法使用CMake生成的
INSTALL
make target(它调用它时没有/默认参数,请参见示例)。@Biffen对我来说,这看起来像是他试图将
CMake\u INSTALL.CMake
直接作为shell脚本运行@Andy Stopford这是一个CMake脚本文件,因此您必须调用
CMake-P CMake_install.CMake
。我刚刚用
/cmake\u install.cmake
测试了直接从shell调用它,得到了与您相同的错误<代码>设置(CMAKE_INSTALL_PREFIX…只是与bash shell语法不匹配的第一行。大家好。我意识到(昨晚晚些时候)我所遵循的构建说明具有高度误导性,我确实尝试按照Florian的建议将其作为shell脚本运行。只是按照传统方式运行(制作、制作、安装,如下)工作正常。