使用带有XCode 5.0的Eclipse C / C ++项目进行Application Debug时遇到了很多问题,我终于做到了。我终于能够成功调试我的应用程序了,这就是为什么我决定制作这个小教程,希望能节省时间给别人。
当尝试在Mavericks OS上的Eclipse上用C / C ++编写调试和应用程序时,它会出现“Error gdb - version”。
这是因为Eclipse无法在新的Mac OSX上找到GDB调试,因为Apple不再使用GDB支持代替LLDB。要检查这是否是您的情况,只需尝试从终端gdb
运行,它将显示为未找到的文件。
问题是LLDB尚未针对Eclipse配置(或者相反)。那么如何让Eclipse再次调试应用程序,就像之前的10.8操作系统一样?
首先获取并编译GDB。您有两种可能的选择:
我的建议是从Homebrew获取它。在他们的网站上查看下载链接并使用
进行安装ruby -e "$(curl -fsSL https://raw.github.com/mxcl/hebrew/go)"
让它安装。在成功安装GDB之后,您需要签署证书以使Eclipse能够使用GDB,否则它将显示错误:
无法找到进程ID为28885:(os / kern)失败的Mach任务端口 (0x5的)。 (请检查gdb是否为codesigned - 请参阅taskgated(8))
这意味着Eclipse现在可以找到GDB,但由于Apple证书问题而无法运行它。
要签署GDB应用程序并使Eclipse运行成为可能,请遵循以下指南:
https://sourceware.org/gdb/wiki/BuildingOnDarwin
可归纳为:
打开菜单/钥匙串访问/证书助理/创建证书(TOP MENU栏)
选择一个名称(示例中为gdb-cert) 3.1将“身份类型”设置为“自签名根” 3.2将“证书类型”设置为“代码签名” 3.3检查标志“让我覆盖默认值” 3.4在“继续”上单击几次,直到进入“为证书指定位置”屏幕,然后将钥匙串设置为“系统” 3.5如果您无法将证书存储在“系统”钥匙串中,请在“登录”钥匙串中创建,然后将其导出。然后,您可以将其导入“系统”钥匙串。 3.6确保“系统”(左上方窗口)中有“gdb-cert”
在新制作的证书上按两次选择“获取信息”(gdb-cert),
现在您需要通过终端
签署认证$ codesign -s gdb-cert ../path of GDB
示例:
$ codesign -s gdb-cert /usr/local/bin/gdb
你们现在都已经准备就绪....准备在MacOSX Mavericks上的Eclipse上调试你的C / C ++应用程序
确保再次正确设置Eclipse菜单运行 - >调试配置 - >调试器: GDB调试器 - > / usr / local / bin / gdb(或你的本地路径,用“$ which gdb”检查它以获得正确的路径) GDB命令文件 - > .gdbinit
Apple让GDB安装在小牛队,但他们喜欢在做一个简单的Hallo World计划之前将人们的头埋在墙上。没有评论。
玩得开心,我希望能节省你的时间!