12

添加 MapKit 和 CoreLocation 框架后,我无法构建我的应用程序。它们都是 4.3 框架,并且该应用程序过去可以与 UIKit、CoreGraphics 和 Foundation 一起正常工作,只是给我带来了这两个方面的问题。不确定所需的架构是什么,代码中没有任何错误。任何帮助表示赞赏!

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 的“Build Phases”、“Link Binary With Libraries”部分添加。

于 2013-08-22T09:15:36.183 回答
0

我在Build Settings -> Search paths中使用了 $(inherited)

请参阅下面的 URL 了解 $(inherited) 的用法, Xcode 的搜索路径设置中的 $(inherited) 是什么?

于 2015-12-31T06:24:38.053 回答