无法使用 SDWebImage

Can't use SDWebImage

Xcode:版本 7.2

OS X: 10.10.5


我是 iOS 的新手,并尝试按照官方安装指南在 Objective-C 中使用 SDWebImage,但出现此错误:

Undefined symbols for architecture x86_64:
  "_OBJC_CLASS_$_SDWebImageManager", referenced from:
      objc-class-ref in ViewController.o
ld: symbol(s) not found for architecture x86_64
clang: error: linker command failed with exit code 1 (use -v to see invocation)

我下载了 zip 文件并解压,并将文件添加到我的项目中。

此外,添加了依赖项 "ImageIO.framework" 和链接器标志“-ObjC”。

Screenshot

我已经阅读了这些问题:

不要下载解压。这真是最可怕的做事方式。使用 CocoaPods, Carthage or at least git submodules。 "unzip way" 使得代码更难维护:你无法知道你导入了哪个版本(当你一年后回到这个项目时),没有人知道引用在哪里。人们会手动更改源文件,因此以后您将无法在不丢失这些更改的情况下更新到较新的版本。您还必须手动设置您的项目,这看起来对您来说很麻烦(和许多其他人,不用担心)。最简单的修复方法?使用 CocoaPods。

为此,打开控制台并输入:

$ sudo gem install cocoapods

在 Xcode 中关闭您的项目。在控制台中打开 .xcodeproj 的路径。类型:

$ pod init

打开 .pod 文件。粘贴到那里 pod 'SDWebImage', '~> 3.7'。在控制台类型中:

$ pod install

完成后,打开 .xcodeworkspace。现在应该一切正常了。

发生这种情况的原因可能是框架未正确链接到应用程序中。

只需尝试以下步骤:

  • 转到目标 -> 构建阶段 -> Link 带库的二进制文件
  • 单击 + 符号并从项目中添加它
  • 清理应用并重新构建

希望对您有所帮助。

pod deintegrate + pod install 帮我修好了!!!