Странная ошибка в учебнике Apple Core Data - PullRequest
4 голосов
/ 24 июля 2011

Я делал 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.Что может быть причиной этого?Я шаг за шагом следовал этому уроку и совершенно не представлял, что может пойти не так.

Ответы [ 4 ]

9 голосов
/ 24 июля 2011

Вам необходимо импортировать каркас CoreLocation.Это можно сделать, перейдя в Проект - Этапы сборки - Соединить двоичные файлы с библиотеками

3 голосов
/ 24 июля 2011

Похоже, вам нужно добавить каркас CoreLocation в связанные каркасы проекта.

В настройках проекта выберите цель приложения и в разделе «Этапы сборки» добавьте ее на шаг «Связать двоичные файлы с библиотеками».

1 голос
/ 24 июля 2011

Когда вы начали проект, вы выбрали «Использовать основные данные для хранения»? Я думаю, что это добавляет рамки, которые вам нужны.

нажмите на свой проект в панели навигации (яблоко + 1)

цели -> ваш проект-> этапы сборки -> связать двоичные файлы с библиотеками -> +

, затем выберите CoreData.framework и добавьте.

0 голосов
/ 16 октября 2014

Иногда файл .m исключается из списка «Скомпилированные источники» в XCode.Вам нужно добавить файл .m вручную:

Этапы сборки> Скомпилированные источники> (проверьте, действительно ли отсутствует файл .m)> Добавить файл .m> Сборка

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...