如何使CMake使用环境变量LD_LIBRARY_PATH和C_INCLUDE_DIRS [英] How to make CMake use environment variable LD_LIBRARY_PATH and C_INCLUDE_DIRS
问题描述
是否有从cmake命令行传递C_INCLUDE_DIRS和LD_LIBRARY_PATH的方法,还是有办法设置env以便CMAKE可以找到并使用它们?
Is there a way to pass C_INCLUDE_DIRS and LD_LIBRARY_PATH from cmake command line or is there a way to set env so that CMAKE can find and use them?
推荐答案
目前尚不清楚您打算如何使用这些变量.这里有一些可能性:
It is not fully clear what you intend to do with these variables. Here are some possibilities:
-
在CMake脚本中,您可以使用语法
$ ENV {< VARIABLE_NAME>}
读取环境变量.因此,在您的CMakeLists.txt
中,您可以拥有类似
Inside a CMake script you can read environment variables using the syntax
$ENV{<VARIABLE_NAME>}
. So in yourCMakeLists.txt
you can have something like
message( "Found environment variable LD_LIBRARY_PATH=$ENV{LD_LIBRARY_PATH}" )
或者,如果您有其他人的项目,并且想要指示CMake在某些其他目录中查找库,则可以使用 CMAKE_LIBRARY_PATH .例如,要在命令行中传递这些变量,您可以
Or if you have someone else's project and you want to instruct CMake to look for libraries in some additional directories you can use CMAKE_PREFIX_PATH or CMAKE_LIBRARY_PATH. For example to pass these variables in a command line you could do
cmake -D CMAKE_PREFIX_PATH=/path/to/custom/location
这篇关于如何使CMake使用环境变量LD_LIBRARY_PATH和C_INCLUDE_DIRS的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!