2011-07-24 294 views
4

我在做Apple Core Data Tutorial,并于第一次对我建议建项目,我得到这个错误:奇怪的错误

Ld /Users/user/Library/Developer/Xcode/DerivedData/Locations-fajvunxiruohofbhzimrgekrpnqh/Build/Products/Debug-iphonesimulator/Locations.app/Locations normal i386 
    cd "/Users/user/Documents/xcode projects/Locations" 
    setenv MACOSX_DEPLOYMENT_TARGET 10.6 
    setenv PATH "/Developer/Platforms/iPhoneSimulator.platform/Developer/usr/bin:/Developer/usr/bin:/usr/bin:/bin:/usr/sbin:/sbin" 
    /Developer/Platforms/iPhoneSimulator.platform/Developer/usr/bin/llvm-gcc-4.2 -arch i386 -isysroot /Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator4.3.sdk -L/Users/user/Library/Developer/Xcode/DerivedData/Locations-fajvunxiruohofbhzimrgekrpnqh/Build/Products/Debug-iphonesimulator -F/Users/user/Library/Developer/Xcode/DerivedData/Locations-fajvunxiruohofbhzimrgekrpnqh/Build/Products/Debug-iphonesimulator -filelist /Users/user/Library/Developer/Xcode/DerivedData/Locations-fajvunxiruohofbhzimrgekrpnqh/Build/Intermediates/Locations.build/Debug-iphonesimulator/Locations.build/Objects-normal/i386/Locations.LinkFileList -mmacosx-version-min=10.6 -Xlinker -objc_abi_version -Xlinker 2 -framework UIKit -framework Foundation -framework CoreGraphics -framework CoreData -o /Users/user/Library/Developer/Xcode/DerivedData/Locations-fajvunxiruohofbhzimrgekrpnqh/Build/Products/Debug-iphonesimulator/Locations.app/Locations 

Undefined symbols for architecture i386: 
    "_OBJC_CLASS_$_CLLocationManager", referenced from: 
     objc-class-ref in RootViewController.o 
    "_kCLLocationAccuracyNearestTenMeters", referenced from: 
     -[RootViewController locationManager] in RootViewController.o 
ld: symbol(s) not found for architecture i386 
collect2: ld returned 1 exit status 

我在Xcode 4.0.2的Mac OS X 10.6.8。这可能是什么原因?我一步一步地跟着教程,完全不知道会出现什么问题。

回答

9

您需要导入CoreLocation框架。这可以通过转到项目 - 构建阶段 - 与库的链接二进制文件

+0

它解决它!非常感谢。 –

3

看起来您需要将CoreLocation框架添加到项目的链接框架。

在项目设置中,选择应用程序目标并在“Build Phases”下将其添加到“Link Binary With Libraries”步骤。

1

当您启动项目时是否选择了“使用核心数据存储”?我认为它增加了你需要的框架。

点击导航窗格中的项目(苹果+ 1)

目标 - >您的项目 - >构建阶段 - >链接二进制与图书馆 - > +

然后选择CoreData.framework并添加。

0

有时,.m文件将从XCode中的“编译源”列表中删除。您需要手动添加.m文件:

构建阶段>编译源>(检查,如果你的.m文件确实丢失)>添加.m文件>构建