iOS 4.2.1开发SDK中缺少libXcodeDebuggerSupport.dylib

时间:2010-11-26 10:08:16

标签: iphone xcode ios ios4

注意:在Xcode 4.3.2上获取此信息?查看this question的答案。

注意:创建一个使用4.2库的符号链接似乎工作正常

cd /Developer/Platforms/iPhoneOS.platform/DeviceSupport/4.2.1\ \(8C148\)/Symbols/
sudo ln -s ../../4.2\ \(8C134\)/Symbols/Developer

从4.2.0(测试版,我相信)升级到4.2.1后,缺少libXcodeDebuggerSupport.dylib文件,导致:

warning: Unable to read symbols for /Developer/Platforms/iPhoneOS.platform/DeviceSupport/4.2.1 (8C148)/Symbols/Developer/usr/lib/libXcodeDebuggerSupport.dylib (file not found).

我猜这不好。看看有问题的目录我注意到:

.../DeviceSupport/4.2 (8C134)/Symbols/Developer/usr/lib/libXcodeDebuggerSupport.dylib

.../DeviceSupport/4.2.1 (8C148)/Symbols/System/
.../DeviceSupport/4.2.1 (8C148)/Symbols/usr/

以上两个目录组成了4.2.1文件夹中的所有内容。没有“Developer”文件夹。检查那里的/ usr / dir,我在lib目录中找不到libXcodeDebuggerSupport.dylib文件,所以ln -s'ing不是一个选项。

值得一提的是:升级后,我将iPad插入并且必须在Xcode组织器中单击“用于开发”。这样做,我收到一条关于该版本缺少符号的消息,Xcode继续生成这样的符号,然后失败了。我恢复了iPad并再次使用“用于开发”,并且没有出现任何遗漏符号......

更新:删除/ Developer并从头开始重新安装Xcode 解决此问题。

更新2:我刚刚意识到重新安装Xcode后,

.../DeviceSupport/4.2 (8C134)/Symbols

现在是一个符号链接,

lrwxr-xr-x  1 root  admin        36 Dec  3 17:17 Symbols -> ../../Developer/SDKs/iPhoneOS4.2.sdk

有问题的目录中有相应的文件。也许这仅仅是以同样的方式链接4.2.1目录的问题?我会尝试一下,看看Xcode是否吓坏了。如果拥有此文件的人可以提供一个非常出色的md5总和。这就是它对我说的话:

$ md5 /Developer/Platforms/iPhoneOS.platform/DeviceSupport/4.2\ \(8C134\)/Symbols/Developer/usr/lib/libXcodeDebuggerSupport.dylib 
MD5 (/Developer/Platforms/iPhoneOS.platform/DeviceSupport/4.2 (8C134)/Symbols/Developer/usr/lib/libXcodeDebuggerSupport.dylib) 
    = 08f93a0a2e3b03feaae732691f112688

如果MD5总和与

的输出相同
$ md5 /Developer/Platforms/iPhoneOS.platform/DeviceSupport/4.2.1\ \(8C148\)/Symbols/Developer/usr/lib/libXcodeDebuggerSupport.dylib 

然后我们都准备好了。

7 个答案:

答案 0 :(得分:29)

我刚刚解决这个问题的方法是:

cd /Developer/Platforms/iPhoneOS.platform/DeviceSupport/4.2.1 (8C148)/Symbols

并且创建了符号链接:

ln -s ../../4.2\ \(8C134\)/Symbols/Developer/ Developer

它解决了我的问题。

答案 1 :(得分:1)

如果您没有任何遗失,只需转储整个Developer文件夹(或者您正在调用它的Developer4.2)。使用iOS 4.2 SDK的官方发行版 - “Xcode 3.2.5和iOS SDK 4.2”从头开始重新安装。 我这样做了,发现一切都只在4.2(8C134)下安装,并且根本不使用4.2.1。

答案 2 :(得分:1)

我没有足够的观点对已接受的答案发表评论。 Trinca的解决方案适合我。

只有一个补充: 当我尝试执行ln命令时,我在Xterm中获得了权限被拒绝。

只需输入

sudo xterm 并输入我的系统管理员密码 并在新终端重复该过程。

我想知道有多少人因为这个问题而重新安装Xcode。 如果人们继续重新安装而不检查更好的解决方案,那绝对是浪费时间。 Apple必须为sdk运行时检查保留足够的审阅者,而不仅仅是我们的应用程序:)。

答案 3 :(得分:0)

删除文件夹无法正确卸载Xcode。

以下是从安装程序随附的PDF自述文件中卸载Xcode的步骤:

  

卸载Xcode Developer Tools

     

卸载Xcode开发人员工具   启动量与   目录,来自终端窗口   类型:

     

$ sudo <Xcode>/Library/uninstall-devtools -mode=all

     

要删除启动卷上的基础开发人员内容,   但离开目录和   支持文件不受影响,来自   终端窗口类型:

     

$ sudo <Xcode>/Library/uninstall-devtools --mode=systemsupport

     

要删除UNIX上的UNIX开发支持   启动量,但离开   目录和支持文件   从终端窗口触及   类型:

     

$ sudo <Xcode>/Library/uninstall-devtools --mode=unixdev

     

最后,要卸载你的目录   可以简单地将它拖到垃圾桶,或   从终端窗口输入:

     

$ sudo <Xcode>/Library/uninstall-devtools --mode=xcodedir

     

注意:以前版本的。附带的卸载程序   Xcode开发人员工具不会   清理系统中的所有内容   正常。你应该使用那个   与这些Xcode开发人员一起安装   工具。

我的直觉告诉我,这个过程会正确地核对/替换那些导致你麻烦的dylib。至少,所有尝试这一切都将耗费你的时间。


答案 4 :(得分:0)

你有〜/ Library / iTunes / iPhone软件更新中的图像你可以将它添加到xcode组织器并从那里获取符号。

我也有这个问题,这对我没用:

  • 退出XCode
  • 删除文件夹/Developer/Platforms/iPhoneOS.platform/DeviceSupport/4.2.1 \(8C148)
  • 插入iPhone
  • 培养组织者。它应该要求您从手机中收集符号。
  • 等待收集并处理手机上的符号。

答案 5 :(得分:0)

要解决此问题,我只需将以下目录复制到/Developer/Platforms/iPhoneOS.platform/DeviceSupport/4.2.1(8C148)/ Symbols目录:

/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS4.2.sdk/usr/lib/info/
/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS4.2.sdk/Developer/

复制完毕后,设备上的调试工作正常,并且不会再收到控制台中的错误消息。

希望这有助于其他正在努力调试4.2.1设备的人。 节日快乐!

答案 6 :(得分:0)

我所做的只是导航到/Developer/Platforms/iPhoneOS.platform/DeviceSupport/Latest/Symbols/,然后将整个Developer文件夹放入/Developer/Platforms/iPhoneOS.platform/DeviceSupport/4.2.1(8C148) )/符号/

工作! :)