gpt4 book ai didi

visual-studio - 正确使用 VS_DEBUGGER_WORKING_DIRECTORY 等

转载 作者:行者123 更新时间:2023-12-01 23:36:58 26 4
gpt4 key购买 nike

我正在尝试使用新的 VS_DEBUGGER_WORKING_DIRECTORY 和 VS_DEBUGGER_COMMAND 属性来促进在 CMake 生成的 Visual Studio 项目文件(在我的情况下为 Visual Studio 2013)中的调试。

除了这个之外,我的配置中的其他所有内容都有效

我从“常规”Visual Studio 项目文件(即不是从 CMake 生成的)中注意到,在“配置属性/调试”对话框中,“命令”和“工作目录”字段默认填充为 $(TargetPath ) 和 $(TargetDir) 分别。所以在我的 CMakeLists.txt 文件中,我有:

set_target_properties(myApplication PROPERTIES VS_DEBUGGER_WORKING_DIRECTORY "$(TargetDir)"
VS_DEBUGGER_COMMAND "$(TargetPath)"
VS_DEBUGGER_ENVIRONMENT "%PATH%;C:\\Qt\\5.9.7\\msvc2013_64\\bin")

[事实上,我已经尝试过使用和不使用 $(TargetDir) 和 $(TargetPath) 周围的引号,结果每次都是相同的;它们在路径周围绝对必要。]

然后我构建应用程序,转到“配置属性/调试”对话框并验证它看起来与普通项目文件完全相同,$(TargetDir) 和 $(TargetPath) 正好出现在它们应该做的地方.但它不起作用;当我尝试调试时,我收到一条消息“无法开始调试。请检查您的调试器设置...”

Initial failure; the fields are populated correctly, but no debugging ensues

所以我从对话框中删除了文本 $(TargetDir) 和 $(TargetPath),然后像以前一样再次输入它们:然后它就完美地工作了。

Deleted the fields, and typed them in again exactly as before; now it works

我究竟做错了什么?

最佳答案

事实证明,解决方案是分别用 CMake 生成器表达式“$<TARGET_FILE:myApplication>”和“$<TARGET_FILE_DIR:myApplication>”替换“$(TargetPath)”和“$(TargetDir)”,即:

set_target_properties(myApplication PROPERTIES VS_DEBUGGER_WORKING_DIRECTORY "$<TARGET_FILE_DIR:myApplication>"
VS_DEBUGGER_COMMAND "$<TARGET_FILE:myApplication>"
VS_DEBUGGER_ENVIRONMENT "PATH=%PATH%;${CMAKE_PREFIX_PATH}/bin")

关于visual-studio - 正确使用 VS_DEBUGGER_WORKING_DIRECTORY 等,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55713475/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com