0
  • 我在旧的优胜美地机器上的 Xcode 7.2 上有一个 IOS-App SWIFT 项目,它工作和构建都很好。
  • 我有一个使用 Xcode 7.3.1 运行“El Capitan”的新 MAC
  • 我已通过复制将我的项目迁移到新机器:项目文件夹、所有外部库和框架、导入的配置文件和密钥
  • 在将所有库引用到新文件夹结构后,我的项目不再有语法错误。

现在我构建项目,我收到以下错误:

Undefined symbols for architecture x86_64:
  "_OBJC_CLASS_$_SSZipArchive", referenced from:
      type metadata accessor for __ObjC.SSZipArchive 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)

我不知道如何分析这个问题,这就是我在这里问的原因。有什么帮助吗?

我添加了一个小项目,用于使用 Xcode 7.3.1 重现错误: https ://drive.google.com/open?id= 0BzTzuiIaUzqkeTNrQTZkdGxrUnM 它是一个 zip 文件,其内容可以解压缩到桌面上。(SSArchiveTest 是根文件夹)

更新

当试图在 IPAD 上运行时,我得到了同样的错误,但引用了架构 arm64:

Undefined symbols for architecture arm64:
  "_OBJC_CLASS_$_SSZipArchive", referenced from:
      type metadata accessor for __ObjC.SSZipArchive in ViewController.o
ld: symbol(s) not found for architecture arm64
clang: error: linker command failed with exit code 1 (use -v to see invocation)

更新 2 到目前为止我做了什么

到目前为止我所做的: - 从 xcode -> 窗口 -> 项目 -> 删除 ... 删除派生数据 - 通过下载最新源并替换我正在运行的项目中已有的所有内容,从 GIT 更新了 SSZipArchive。

更新 3 添加了小项目

我添加了一个使用 Xcode 7.3.1 重现错误的小项目: https ://drive.google.com/open?id= 0BzTzuiIaUzqkeTNrQTZkdGxrUnM 它是一个 zip 文件,其内容可以解压缩到桌面上。(SSArchiveTest 是根文件夹)

4

3 回答 3

0

我有同样的问题。解决方案是将所有 *.c 文件(来自 minizip 和 aes 文件夹)添加到 Targets --> Build Phases --> Compile Sources。

于 2017-09-22T16:45:10.857 回答
0

我解决了这个问题。简单地在链接库中添加 zlib.tbd 解决了这个问题。

于 2016-06-20T11:33:03.367 回答
0

您正在项目中使用 SSZipArchive。如果您使用 cocoapods 安装它,请更新 podfile。

打开终端窗口,进入您的项目文件夹并运行

pod update
于 2016-06-17T23:27:38.693 回答