1

Google ドライブ SDK を Google Objective-C クライアント API と一緒にインポートしているときに、次のエラーが発生します。私は、Swift を主要言語として iOS 8.1 で Xcode 6.1 を使用しています。Google ドライブ SDK ページのすべての手順に従いましたが、まだ機能しません。リンカー エラーがあり、これを修正する方法がわかりません。これを修正する方法についてのアイデアはありますか?

ld: warning: directory not found for option '-L/Users/salmanhasratkhan/Documents/Projects/xy/Project Shutter/iOS/Project Shutter copy/google-api-objectivec-client-read-only/Source/build/Debug-iphoneos'
ld: warning: ignoring file /Users/salmanhasratkhan/Library/Developer/Xcode/DerivedData/Project_Shutter-bcpwuavdfcgeemfbwlffsfjqczvo/Build/Products/Debug-iphoneos/libGTLTouchStaticLib.a, file was built for archive which is not the architecture being linked (arm64): /Users/salmanhasratkhan/Library/Developer/Xcode/DerivedData/Project_Shutter-bcpwuavdfcgeemfbwlffsfjqczvo/Build/Products/Debug-iphoneos/libGTLTouchStaticLib.a
Undefined symbols for architecture arm64:
  "_OBJC_METACLASS_$_GTLService", referenced from:
      _OBJC_METACLASS_$_GTLServiceDrive in GTLDrive_Sources.o
     (maybe you meant: _OBJC_METACLASS_$_GTLServiceDrive)
  "_OBJC_CLASS_$_GTLService", referenced from:
      _OBJC_CLASS_$_GTLServiceDrive in GTLDrive_Sources.o
     (maybe you meant: _OBJC_CLASS_$_GTLServiceDrive)
  "_OBJC_METACLASS_$_GTLObject", referenced from:
      _OBJC_METACLASS_$_GTLDriveAbout in GTLDrive_Sources.o
      _OBJC_METACLASS_$_GTLDriveAboutAdditionalRoleInfoItem in GTLDrive_Sources.o
      _OBJC_METACLASS_$_GTLDriveAboutExportFormatsItem in GTLDrive_Sources.o
      _OBJC_METACLASS_$_GTLDriveAboutFeaturesItem in GTLDrive_Sources.o
      _OBJC_METACLASS_$_GTLDriveAboutImportFormatsItem in GTLDrive_Sources.o
      _OBJC_METACLASS_$_GTLDriveAboutMaxUploadSizesItem in GTLDrive_Sources.o
      _OBJC_METACLASS_$_GTLDriveAboutQuotaBytesByServiceItem in GTLDrive_Sources.o
      ...
  "_OBJC_METACLASS_$_GTLQuery", referenced from:
      _OBJC_METACLASS_$_GTLQueryDrive in GTLDrive_Sources.o
     (maybe you meant: _OBJC_METACLASS_$_GTLQueryDrive)
  "_OBJC_CLASS_$_GTLObject", referenced from:
      _OBJC_CLASS_$_GTLDriveAboutAdditionalRoleInfoItem in GTLDrive_Sources.o
      _OBJC_CLASS_$_GTLDriveAboutExportFormatsItem in GTLDrive_Sources.o
      _OBJC_CLASS_$_GTLDriveAboutFeaturesItem in GTLDrive_Sources.o
      _OBJC_CLASS_$_GTLDriveAboutImportFormatsItem in GTLDrive_Sources.o
      _OBJC_CLASS_$_GTLDriveAboutMaxUploadSizesItem in GTLDrive_Sources.o
      _OBJC_CLASS_$_GTLDriveAboutQuotaBytesByServiceItem in GTLDrive_Sources.o
      _OBJC_CLASS_$_GTLDriveAbout in GTLDrive_Sources.o
      ...
  "_OBJC_METACLASS_$_GTLCollectionObject", referenced from:
      _OBJC_METACLASS_$_GTLDriveAppList in GTLDrive_Sources.o
      _OBJC_METACLASS_$_GTLDriveChangeList in GTLDrive_Sources.o
      _OBJC_METACLASS_$_GTLDriveChildList in GTLDrive_Sources.o
      _OBJC_METACLASS_$_GTLDriveCommentList in GTLDrive_Sources.o
      _OBJC_METACLASS_$_GTLDriveCommentReplyList in GTLDrive_Sources.o
      _OBJC_METACLASS_$_GTLDriveFileList in GTLDrive_Sources.o
      _OBJC_METACLASS_$_GTLDriveParentList in GTLDrive_Sources.o
      ...
  "_OBJC_CLASS_$_GTLQuery", referenced from:
      _OBJC_CLASS_$_GTLQueryDrive in GTLDrive_Sources.o
     (maybe you meant: _OBJC_CLASS_$_GTLQueryDrive)
  "_OBJC_CLASS_$_GTLCollectionObject", referenced from:
      _OBJC_CLASS_$_GTLDriveAppList in GTLDrive_Sources.o
      _OBJC_CLASS_$_GTLDriveChangeList in GTLDrive_Sources.o
      _OBJC_CLASS_$_GTLDriveChildList in GTLDrive_Sources.o
      _OBJC_CLASS_$_GTLDriveCommentList in GTLDrive_Sources.o
      _OBJC_CLASS_$_GTLDriveCommentReplyList in GTLDrive_Sources.o
      _OBJC_CLASS_$_GTLDriveFileList in GTLDrive_Sources.o
      _OBJC_CLASS_$_GTLDriveParentList in GTLDrive_Sources.o
      ...
ld: symbol(s) not found for architecture arm64
clang: error: linker command failed with exit code 1 (use -v to see invocation)
4

1 に答える 1

1

いくつかの実験の後、Xcode 6.1 で動作させる方法を見つけました。以下は私が試したアプローチです。どれが実際に機能したのかわからないため、すべてを文書化しています。

  1. GTL.xcodeproj を個別に開きます。Xcode から警告が表示され、設定を更新するように求められます。更新することを選択しました。
  2. 次に、GTL プロジェクト (ターゲット ウィンドウ) に移動し、GTLTouchStaticLib をクリックして、サポートされているプラ​​ットフォームで iOS を選択します (デフォルトでは、これは OS X に設定されています)。
  3. GTL プロジェクトを閉じてから、自分のプロジェクトを再度開きます。クリーンアップしてビルドし、ビオラ リンカーはもう文句を言わず、すべて正常に動作するはずです。

(1)が必要かどうかはわかりませんが、これらすべての手順を一緒に行ったので、実際に問題を解決したのはどれかわかりません。

これが他の人の問題を解決することを願っています。

于 2014-11-03T10:38:25.797 に答える