12

MapKit と CoreLocation フレームワークを追加した後、アプリのビルドに問題があります。どちらも 4.3 フレームワークであり、アプリは以前は UIKit、CoreGraphics、および Foundation で正常に動作していましたが、これら 2 つの問題が発生しました。必要なアーキテクチャが不明ですが、コードにバグはありません。どんな助けでも大歓迎です!

ld: warning: ignoring file /Users/F3d3r3r/Desktop/testNav4_3/MapKit.framework/MapKit, missing required architecture i386 in file

ld: warning: ignoring file /Users/F3d3r3r/Desktop/testNav4_3/CoreLocation.framework/CoreLocation, missing required architecture i386 in file

Undefined symbols for architecture i386:
  "_CLLocationCoordinate2DMake", referenced from:
       -[Layer2 tableView:cellForRowAtIndexPath:] in Layer2.o
  "_OBJC_CLASS_$_MKMapView", referenced from:
       objc-class-ref in Layer2.o
ld: symbol(s) not found for architecture i386
collect2: ld returned 1 exit status
4

4 に答える 4

45

CLLocation と MapKit を備えた CoreLocation フレームワークを追加します。

于 2011-04-04T22:24:02.290 に答える
7

私は同じ問題を抱えていました..長い闘争の後、私は問題を見つけました..

私はこの方法で解決しました..

  1. ビルド設定に移動
  2. 「フレームワーク検索パス」を検索
  3. そして、事前に入力されたパスを削除します。

今では完全に動作します..それが誰かを助けることを願っています..

于 2012-12-23T18:56:06.293 に答える
1

フレームワークを Finder からプロジェクトにコピーする場合は注意してください。確認しておいて; プロジェクトに追加するときに「ファイルのコピー...」オプションはチェックされません。

プロジェクトのルート フォルダーを確認し、それをコピーしたかどうかを確認します。削除して、最初から追加してみてください。

Xcode の「ビルド フェーズ」、「バイナリとライブラリのリンク」セクションから追加することを強くお勧めします。

于 2013-08-22T09:15:36.183 に答える
0

Build Settings -> Search paths$(inherited)を使用しました

$(inherited) の使い方は下記URL参照 Xcodeの検索パス設定の $(inherited) とは?

于 2015-12-31T06:24:38.053 に答える