本文主要是介绍CMake 中SET 命令使用引号 需要引起注意,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
看到有CMakeLists.txt 有set 命令这么写:
set(CMAKE_C_FLAGS "-fPIC" ${CMAKE_C_FLAGS}) //引号的范围
这样在生成的flags.make 中, C_FLAGS 会有如下值:(部分内容省略)
C_FLAGS = -fPIC ; -L/usr/lib //注意多了一个逗号
这样在连接的时候会报类似如下的错误:
/bin/sh: 1: -L/usr/lib: not found
需要把
set(CMAKE_C_FLAGS "-fPIC" ${CMAKE_C_FLAGS})
改成:
set(CMAKE_C_FLAGS "-fPIC ${CMAKE_C_FLAGS}" )
这样flags.make 中生成的就是不带都好的C_FLAGS:
C_FLAGS = -fPIC -L/usr/lib
这篇关于CMake 中SET 命令使用引号 需要引起注意的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!