Eclipse GDB MacOSX Mavericks

我有使用XCode 5.0使用Eclipse C / C ++项目进行应用程序debugging的可怕问题,我终于做到了。 我终于能够成功地debugging我的应用程序,这就是为什么我决定做这个小教程,希望能够节省时间给别人。

当在小牛操作系统上的Eclipse上使用C / C ++编写debugging和应用程序时,会出现“Error gdb-version”。

这是因为Eclipse在新的Mac OSX上无法findGDBdebugging,因为Apple不再支持GDB支持来代替LLDB。 要检查这是否是你的情况只是尝试从terminalgdb运行,它会显示为文件未find。

问题是LLDB没有configuration为Eclipse(或其他方式)。 那么如何让你的Eclipse像之前的10.8操作系统一样再次debugging应用程序呢?

首先得到并编译GDB。 你有两个可能的select:

  • Macports(不幸的是,小牛的发行被困在Building getext库中)
  • 家酿

我的build议是从自制。 检查他们的网站下载链接并安装使用

 ruby -e "$(curl -fsSL https://raw.github.com/mxcl/hebrew/go)" 

让它安装。 成功安装GDB之后,您需要签署证书才能使Eclipse能够使用GDB,否则会显示错误:

(os / kern)失败(0x5)无法findMach任务端口的进程ID 28885。 (请检查gdb是否为signedigned – 请参阅taskgated(8))

这意味着Eclipse现在可以findGDB,但由于Apple证书问题而无法运行。

为了签署GDB应用程序并使Eclipse运行成为可能,请遵循以下指南:

https://sourceware.org/gdb/wiki/BuildingOnDarwin

这可以概括为:

  1. 启动钥匙串访问应用程序(/ Applications / Utilities / Keychain Access.app)
  2. 打开菜单/钥匙串访问/证书助理/创build证书(TOP MENU BAR)

  3. select一个名字(例子中的gdb-cert)3.1将“Identity Type”设置为“Self Signed Root”3.2将“Certificate Type”设置为“Code Signing”3.3选中“Let me override defaults”标志3.4点击“继续“直到进入”为证书指定一个位置“屏幕,然后将钥匙串设置为”系统“3.5如果您不能将证书存储在”系统“钥匙串中,请在”login“钥匙串中创build证书,然后导出它。 然后您可以将其导入到“系统”钥匙串中。 3.6确保你的“系统”(左上方窗口)中有“gdb-cert”

  4. 按新鲜制作的证书(gdb-cert)上的两次,select“获取信息”

  5. 打开“Trus”项目,并设置“代码签名始终信任”
  6. closures钥匙串访问应用程序
  7. 从活动监视器重新启动“任务”应用程序

现在您需要通过terminal进行authentication签字

 $ codesign -s gdb-cert ../path of GDB 

例:

 $ codesign -s gdb-cert /usr/local/bin/gdb 

你现在都已经设定了….准备在MacOSX Mavericks上的Eclipse上debugging你的C / C ++应用程序

确保你已经正确设置了Eclipse菜单运行 – >debuggingconfiguration – >debugging器:GDBdebugging器 – > / usr / local / bin / gdb(或者你的本地path,用“$ which gdb “得到正确的path)GDB命令文件 – > .gdbinit

苹果公司让GDB安装在小牛身上,但是他们喜欢在做一个简单的Hallo World程序之前让人们挤在墙上。 没有意见。

玩得开心,我希望能节省您的时间!