当然,XCODE5是需要安装的,但XCODE5用的调试工具不是gdb,而是lldb,而CDT用的是gdb,需要先安装gdb,在MacOSX用调试工具还需要代码签名,过程非常繁琐,这里将CDT的开发环境配置详细说明。
1. 安装GDB
用mac ports工具安装:# sudo port install gdb
安装完成后,会提示你:You will need to make sure
/System/Library/LaunchDaemons/com.apple.taskgated.plist has the '-p' option,
e.g.
<key>ProgramArguments</key>
<array>
<string>/usr/libexec/taskgated</string>
<string>-sp</string>
</array>
修改这个文件,将红色部分替换为上面的文字,此文件需要管理员权限:# sudo vi /System/Library/LaunchDaemons/com.apple.taskgated.plist
安装好的gdb的文件位置:/opt/local/bin/ggdb。注意,命令为ggdb。2. 配置GDB
要gdb能够在Eclipse中正常调试,必须代码签名。2.1 创建代码签名证书
运行 应用程序 -> 其他 -> 钥匙串访问。如下图:
取一个名称:gdbcert,证书类型选择:代码签名,勾选“让我覆盖这些默认值”,如下图:
一直按“继续”,到最后一屏,在钥匙串中选择“系统”,如下图:
点击创建,输入你的密码后,代码签名证书就创建了。如下图:
在“gdbcert”证书上按右键,选择“显示简介”,选择“总是信任”,如下图:
关闭时会要求输入密码。然后,退出“钥匙串访问”。
2.2 签名证书
先重启taskgated,在终端里,输入如下命令:
# killall taskgated
签名证书,需要启用root用户,进入 系统偏好设备 -> 用户与群组,如下图:
点击网络帐户服务器右边的“加入”按钮,出现下图:
点击“打开目录实用工具”,如下图:
# su root
#
codesign -fs gdbc /opt/local/bin/ggdb
# sudo ln -s /opt/local/bin/ggdb /opt/local/bin/gdb
这样,ggdb调试程序的代码签名就完成了,可以在Eclipse里调试了。最后面是用了一个符号连接,方便直接使用gdb命令。
没有评论:
发表评论