我有一个具有以下结构的项目:
project_name/CMakeLists.txt
project_name/src
project_name/resources
...
project_name-build/configuration_name/project_name.exe
我希望我的应用程序在项目根目录project_name
中运行,这样它就可以直接访问resources
。
CMake是否提供了指定此属性的方法,或者我必须在使用的每个构建环境中手动设置它?
我在文档中找了找,除了setting up a post-build event to run my project from the desired directory的可能性之外没有发现任何东西,这是不太理想的。我还发现了the working directory setting for Visual Studio is saved in a per-user file (.vcxproj.user),我不相信CMake会生成它(这表明答案可能是否定的)。
3条答案
按热度按时间atmip9wb1#
从CMake 3.8开始,提供了
VS_DEBUGGER_WORKING_DIRECTORY
target属性,可让您在Visual Studio中设定目的的调试工具工作目录。用法示例:
w80xi6nr2#
正如drescherjm指出的那样(在他对这个问题的评论中),CMake没有提供直接设置工作目录的方法,但是,CMake提供了间接设置工作目录的方法。
我想我会走的路是use the configure_file command to fill in a template .user file。
wztqucjr3#
下面是一个更简单的解决方案。将其粘贴到cmake的末尾:
它会覆写目前项目的预设vcxproj.user档案,并根据两柴的需要,指定$(OutDir)做为工作目录。请确定$PROJECT_NAME是您的项目名称。