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でエラーを再現するための小さなプロジェクトを追加しました 。(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)

UPDATE 2 これまでに行ったこと

これまでに行ったこと: - xcode から派生データを削除 -> ウィンドウ -> プロジェクト -> 削除 ... - 最新のソースをダウンロードし、実行中のプロジェクトに既にあるものをすべて置き換えることで、GIT から SSZipArchive を更新しました。

UPDATE 3 小さなプロジェクトが追加されました

Xcode 7.3.1でエラーを再現するための小さなプロジェクトを追加しました 。(SSArchiveTest はルート フォルダーです)

4

3 に答える 3

0

プロジェクトで SSZipArchive を使用しています。cocoapods を使用してインストールした場合は、podfile を更新します。

ターミナル ウィンドウを開き、プロジェクト フォルダーに移動して実行します。

pod update
于 2016-06-17T23:27:38.693 に答える
0

問題を解決しました。ライブラリのリンクに zlib.tbd を追加するだけで問題が解決しました。

于 2016-06-20T11:33:03.367 に答える