【问题标题】:How to debug cmake target after install安装后如何调试cmake目标
【发布时间】:2014-03-25 03:17:52
【问题描述】:

我有一个跨平台项目,它使用 cmake 来生成 Visual Studio 解决方案文件。该项目具有外部依赖项(.dll、资源等),可执行文件唯一可以运行的位置是安装目录。在该目录中,我可以访问所有资源、插件、翻译等。我可以在该目录中的调试或发布中安装项目。

如何在安装位置调试项目?

这个案例有两个问题:

  1. 有时我可能会调试主应用程序 (Main.exe)(cmake 项目中的目标)
  2. 有时我可能会调试一些 Main.exe 在启动时加载的插件(我有一个不同的 cmake 插件项目)

在 Visual C++ 中是否有一种简洁的方法来执行此操作,而无需实际创建一些配置为每次从安装位置启动 Main.exe 的自定义项目? ("C:\Program Files\MainProject\Main.exe")

谢谢你, 尤利安

【问题讨论】:

  • 使用 Visual Studio 调试器,您可以访问已经运行的进程。调试信息的数量将根据进程的编译和链接方式而有所不同。我相信你刚刚启动 Visual Studio,附加到进程,它会问你源代码在哪里。
  • @RichardChambers 是的,但是在启动时添加断点怎么样?这种方法(附加到进程)使得调试程序的启动变得困难。
  • 这个答案可能会提供一些提示stackoverflow.com/a/2681175

标签: windows visual-c++ cmake


【解决方案1】:

我设法通过使用 cmake 为指定项目“配置”一个 .user 文件来做到这一点。

用户唯一需要做的就是使用this bitbucket project中的模板。

在项目中你可以找到template file

需要的cmake脚本命令是:

CONFIGURE_FILE(
"${PROJECT_SOURCE_DIR}/scripts/windows/VS201x_Template.vcxproj.user.in"
"${PROJECT_BINARY_DIR}/INSTALL.vcxproj.user"
)

如果您需要自定义 .user 文件,您始终可以手动完成,方法是保存生成的 Visual Studio 并从中创建模板,类似于上面的示例。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-12-29
    • 2016-07-01
    • 2023-01-27
    • 2023-01-25
    • 1970-01-01
    • 2017-04-13
    相关资源
    最近更新 更多