Tak*_*rel 13 c++ cmake visual-studio
我的问题是这样的:我正在使用Visual Studio 2010开发一个小解析器.我使用CMake作为构建配置工具.
但我发现默认的可执行构建行为,不方便.我想要的是,让我的最终计划位于:
E:/parsec/bin/<exe-name>.<build-type>.exe
Run Code Online (Sandbox Code Playgroud)
而不是
E:/parsec/bin/<build-type>/<exe-name>.exe
Run Code Online (Sandbox Code Playgroud)
你会怎么用CMake做到这一点?
And*_*dré 22
有几种选择:
成功构建后,您可以复制可执行文件(请参阅初学者答案),但使用安装目标可能更好:
使用install命令指定将复制到CMAKE_INSTALL_PREFIX目录的目标(可执行文件,库,标题等).您可以在cmake的命令行上(或在cmake GUI中)指定CMAKE_INSTALL_PREFIX.
警告:建议不要直接在cmakelists.txt中设置绝对路径.
使用set_target_properties定制RUNTIME_OUTPUT_DIRECTORY
set_target_properties( yourexe PROPERTIES RUNTIME_OUTPUT_DIRECTORY E:/parsec/bin/ )
Run Code Online (Sandbox Code Playgroud)
作为替代方法,修改CMAKE_RUNTIME_OUTPUT_DIRECTORY允许您为cmake项目中的所有目标指定此项.在构建dll时,请注意修改CMAKE_LIBRARY_OUTPUT_DIRECTORY.
set( CMAKE_RUNTIME_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/bin )
set( CMAKE_LIBRARY_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/lib )
Run Code Online (Sandbox Code Playgroud)
其他信息:看看这些问题:
| 归档时间: |
|
| 查看次数: |
23217 次 |
| 最近记录: |