解决os x下gdb不能调试的问题
2014-06-04 10:32
423 查看
在较新的os x中使用gdb调试程序会发生 Unable to find Mach task port 之类的错误,这是由于新的os
x内核禁止未授权的程序随意控制其他进程,如果不用root权限的话,我们还可以使用程序签名的方式来解决这个问题。(谁又想老是以root权限调试普通程序呢?
)
依次进入 应用程序->实用工具,打开钥匙串访问:
选择菜单 钥匙串访问->证书助理->创建证书,第一个步骤如下设置:
然后一直next,最后一个设置如下设置:
最后回到钥匙串访问程序主界面,鼠标右键选中刚才新建的证书,选择显示简介,然后展开 信任 项,在代码签名处勾选 总是信任。
在控制台进入gdb程序目录,输入:codesign -s gdb-cert gdb ,好了打完收工,注意要重启mac后,签名设置才能生效哦。
在windows下侵淫多年的童鞋都喜欢使用带有GUI的debugger来调试,在unix like系统中也有图形调试器,比如著名的codelite和codeblocks都自带调试器。不过作为大名鼎鼎的gdb最贴合前端的图形调试器DDD也是非同小可,它和gdb结合甚密,功能也十分强大,推荐大家使用。
最后要注意一点,如果大家在os x下使用sudo ddd调试程序后,会发现ddd会长时间处于“发呆” 状,无法调试程序,状态栏总显示 :Waiting until gdb ready 之类的信息,这时不要慌张,直接 rm -rf ~/.ddd文件夹即可。
x内核禁止未授权的程序随意控制其他进程,如果不用root权限的话,我们还可以使用程序签名的方式来解决这个问题。(谁又想老是以root权限调试普通程序呢?
)
依次进入 应用程序->实用工具,打开钥匙串访问:
选择菜单 钥匙串访问->证书助理->创建证书,第一个步骤如下设置:
然后一直next,最后一个设置如下设置:
最后回到钥匙串访问程序主界面,鼠标右键选中刚才新建的证书,选择显示简介,然后展开 信任 项,在代码签名处勾选 总是信任。
在控制台进入gdb程序目录,输入:codesign -s gdb-cert gdb ,好了打完收工,注意要重启mac后,签名设置才能生效哦。
在windows下侵淫多年的童鞋都喜欢使用带有GUI的debugger来调试,在unix like系统中也有图形调试器,比如著名的codelite和codeblocks都自带调试器。不过作为大名鼎鼎的gdb最贴合前端的图形调试器DDD也是非同小可,它和gdb结合甚密,功能也十分强大,推荐大家使用。
最后要注意一点,如果大家在os x下使用sudo ddd调试程序后,会发现ddd会长时间处于“发呆” 状,无法调试程序,状态栏总显示 :Waiting until gdb ready 之类的信息,这时不要慌张,直接 rm -rf ~/.ddd文件夹即可。
相关文章推荐
- 解决os x下gdb不能调试的问题
- 解决os x下gdb不能调试的问题
- gdbserver 调试ARM 上的程序出现“ waitpid:Function not implemented ”问题的解决
- 解决安装完IE8后,VS2005不能调试问题.........
- 解决安装完IE8后,VS2005不能调试问题
- 解决安装完IE8后,VS2005不能调试问题
- 解决"不能调试"的问题
- 调试技巧:解决pdb文件不能写入问题
- 解决android应用程序不能调试的问题
- 解决安装完IE8后,VS2005不能调试问题.........
- 解决安装完IE8后,VS2005不能调试问题.........
- 解决Visual Studio 2005 不能调试的问题
- Flex不能使用调试问题解决[原]
- 解决安装完IE8后,VS2005不能调试问题.........
- 解决关于Vs.net2003的不能调试WEB项目的问题(转)
- 解决ASP.NET不能调试的问题。
- 一些ASP.NET不能调试问题的解决办法!
- 解决安装IE7.0后VS.NET不能调试问题
- VS2005不能调试的问题与解决
- 解决安装IE8后VS2005不能调试的问题