.dylib文件丢失

18
我正在尝试在iOS 9上编译我的项目。我使用的是XCode7。 错误信息如下:

/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/libtool: can't open file: /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS9.0.sdk/usr/lib/libz.dylib (No such file or directory)
error: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/libtool: can't open file: /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS9.0.sdk/usr/lib/libiconv.dylib (No such file or directory)

我的 dylib 文件显示为红色,所以我尝试再次添加它,但是没有 dylib 文件,所有文件都显示为 .tbd 而不是 .dylib。请帮我解决这个问题。
6个回答

22

我不明白这如何解决问题? - trojanfoe
这不是我的个人发现...而是来自苹果开发者论坛。 - Jio
@Jio 对于 libxml2.dylib,我需要添加什么? - Shobhakar Tiwari
你需要添加-lxml2。 - Jio
有没有想法如何通过CMakeLists添加这些标志? - Rahul Iyer

16

以下是我亲测有效的方法。

  1. 进入您的目标文件夹,生成阶段,"链接二进制库",然后单击 + 按钮。

输入图片说明

  1. 单击 "添加其他..." 按钮。

输入图片说明

  1. 按 CMD+Shift+G 打开 "前往文件夹" 对话框,然后剪切并粘贴文件夹:/usr/lib

输入图片说明

  1. 在右上角搜索框中键入您的 "缺失" 文件的一部分,对于我来说是 libsqlite3.dylib,然后单击打开。

输入图片说明

这应该会链接之前缺少的文件。

(已在 Xcode 7.1 中测试)


4
从“链接二进制文件库”中移除它可以解决我的错误。

1

0
尝试将libc++..tbd框架添加到您的项目中,并重新编译。enter image description here 另外,尝试将libiconv.dylib添加到您的项目框架中。

错误:/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/libtool:文件:/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS9.0.sdk/usr/lib/libc++.tbd 不是一个对象文件(不允许在库中)。 - Jio
你是否正在尝试将其他SDK集成到你的项目中?还是只是一个简单的代码模板? - Teja Nandamuri
我正在尝试将自己的库集成到这个项目中。两者都有 .dylib 库。 - Jio
嗨,问题已解决... https://forums.developer.apple.com/thread/4572。将dylib文件添加到“其他链接标志”中。感谢T先生的支持。 - Jio

0

我通过以下方式解决了这个问题:

前往你的目标 --> 构建阶段 --> 链接二进制文件和库 --> 添加libiconv.dylib

就这样!


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接