作者:拾_间 | 来源:互联网 | 2022-12-10 06:00
有没有办法从cmake命令行传递C_INCLUDE_DIRS和LD_LIBRARY_PATH,或者有办法设置env以便CMAKE可以找到它们?
1> 小智..:
尚不清楚您打算如何使用这些变量。这里有一些可能性:
在CMake脚本中,您可以使用语法读取环境变量$ENV{}
。因此,您CMakeLists.txt
可以拥有类似
message( "Found environment variable LD_LIBRARY_PATH=$ENV{LD_LIBRARY_PATH}" )
如果要添加此变量中包含的位置以供CMake目标可执行文件和库使用,则可以使用link_directories()命令作为
link_directories( $ENV{LD_LIBRARY_PATH} )
或者,如果您有其他人的项目,并且想指示CMake在某些其他目录中查找库,则可以使用CMAKE_PREFIX_PATH或CMAKE_LIBRARY_PATH。例如,要在命令行中传递这些变量,您可以执行
cmake -D CMAKE_PREFIX_PATH=/path/to/custom/location