Сбой команды компоновщика с неопределенными символами для архитектуры i386 - PullRequest
10 голосов
/ 12 декабря 2011

Я пытаюсь сделать функцию скручивания на половину страницы. Это код, который я использую:

#import <QuartzCore/QuartzCore.h>


CATransition *animation = [CATransition animation];
[animation setDelegate:self];
[animation setDuration:1.0f];
[animation setTimingFunction:UIViewAnimationCurveEaseInOut];
[animation setType:(notCurled ? @"mapCurl" : @"mapUnCurl")];
[animation setRemovedOnCompletion:NO];
[animation setFillMode: @"extended"];
[animation setRemovedOnCompletion: NO];
notCurled = !notCurled;

Но я сталкиваюсь со следующими ошибками

Undefined symbols for architecture i386:
  "_OBJC_CLASS_$_CATransition", referenced from:
      objc-class-ref in MyMapViewController.o
ld: symbol(s) not found for architecture i386
clang: error: linker command failed with exit code 1 (use -v to see invocation)


  "_OBJC_CLASS_$_CATransition", referenced from:


      objc-class-ref in SJMapViewController.o


ld: symbol(s) not found for architecture i386


clang: error: linker command failed with exit code 1 (use -v to see invocation)

Как мне это решить?

1 Ответ

23 голосов
/ 12 декабря 2011

ваше приложение жалуется, что не может найти CATransition Symbol.

Вы добавили платформу QuartzCore в свое приложение?

Если не добавили его: перейдите к настройкам цели -> этапы сборки-> двоичный файл ссылки -> нажмите кнопку + и выберите QuartzCore.

, затем импортируйте его туда, где вам нужно его использовать:

      #import <QuartzCore/QuartzCore.h>
...