您的位置:首页 > 运维架构 > Linux

关于 MonoDevelop on Linux 单步调试问题的解决

2016-03-31 16:13 555 查看
在 MonoDevelop 中默认是关闭对外部程序集(.dll)的调试,可通过如下步骤来解决这个问题。

通过菜单【Edit】-【Preferences】-【Debugger】进入到调试器的设置页,把“Debug project code only; do not step into framework code.”选项取消。

如果你的应用是个控制台程序,还需要进入到该项目(鼠标右击该项目,在弹出菜单中选择“Options”)的【运行】设置页中,将“运行于外部控制台”的设置项取消掉。

但是,就算这样也无法单步调试进入到外部程序集,原因是还缺少Mono的调试符文件,即(*.dll.mdb)文件。所以还需要将所有待调试的外部程序集文件对应的.mdb文件拷贝到当前Host项目的“bin/Debug”目录中。 注意:如果外部程序集更新了代码,记得再同步拷贝一次对应的.mdb文件过来。

每次都手动复制还是很痛苦的,尤其是外部程序集较多的时候,所以创建一个复制脚本还是很有必要的。 在Host项目的目录中创建一个名为:
deploy.sh
的脚本文件,使用命令:
vi deploy.sh
然后在vi编辑器的第一行写入:
#!/bin/bash
,第二行开始编写拷贝命令。编辑完成后,记得使用命令:
chmod 777 deploy.sh
去开启其可执行属性。

在 MonoDevelop 中进入Host项目的属性设置对话框,在里面的【构建】-【自定义命令】设置页中添加一个“After Build“命令项:
deploy.sh


至此,就可以愉快的在 MonoDevelop 中对外部库进行单步调试了!
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: