我正在使用cmake创建一个Visual解决方案。我的目录结构如下所示:
Foo
|-- source
|-- include
|-- docs
|-- // ...
|-- bin // desired output directory
|-- build // cmake build directory我希望将生成的项目的输出目录设置在以下位置:Foo/bin。
如果我正确理解,cmake变量迪尔包含到上面目录图中所示的"Foo“目录的绝对路径。使用cmake,我尝试将CMAKE_ARCHIVE_OUTPUT_DIRECTORY设置为${PROJECT_SOURCE_DIR}/bin/static/$(Platform)/$(Configuration)的值。
其中$(Platform)和$(Configuration)是Visual宏。
这不会产生预期的结果。问题是CMake没有用它的值替换"${PROJECT_SOURCE_DIR}“,这意味着在生成的.vcxproj中输出目录值实际上是:
简单地说,我的问题是:如何在CMake中使用cmake变量?
发布于 2016-06-30 06:21:19
你不能,CMake不计算变量或宏.只能添加实际路径(相对路径或绝对路径)。如果要使用变量,则必须修改CMakeLists.txt。
如果从命令行调用CMake,则可以添加由终端计算的-D FENCY_VARIABLE=bin/static/$(Platform)/$(Configuration)。
https://stackoverflow.com/questions/38114413
复制相似问题