2011-07-24 329 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文件>構建