iOS 9和XCode 7 dylib问题

时间:2015-09-02 21:05:59

标签: ios objective-c iphone xcode ios9

我正在尝试将我的项目从iOS 8迁移到iOS 9.任何我都会遇到一些库错误。我正在使用XCode7-beta6。

以下是它的样子:

错误:/ Applications / Xcode-beta 2.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/libtool:无法打开文件:/ Applications / Xcode-beta 2.app/Contents/Developer /Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS9.0.sdk/usr/lib/libz.dylib(没有这样的文件或目录)

libz.dylib包含在“使用库链接二进制文件”中。

现在我知道这个dylib是过去的遗留物,因为如果我删除它然后尝试再添加它我找到tbd文件而不是dylib文件。

这里有一个答案:https://forums.developer.apple.com/message/8609#8609解决了这个问题,但我尝试在其他链接器标志中添加libz -libz和-l。他们都没有工作。

如何让项目找到图书馆?

由于

3 个答案:

答案 0 :(得分:2)

这对我有用:

cd /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS9.2.sdk/usr/lib
sudo cp /usr/lib/libz.dylib .

答案 1 :(得分:0)

首先,升级到GM种子并查看问题是否消失。

如果失败了,您可以使用以前版本的Xcode(它将无法构建)重新打开项目,然后将库(在文件检查器中)从项目相对或绝对更改为SDK相对。

如果失败,请删除库并通过单击“+”重新添加它以添加框架和库,然后将实际的dylib从SDK根目录拖动到生成的打开对话框(IIRC)。一定要找到每个对该库的引用。我建议在.xcodeproj文件夹的内容中使用“grep -r”。

答案 2 :(得分:0)

只需添加libz.tbd,它就可以解决问题