Linker command failed with Undefined symbols for architecture i386
Asked Answered
F

1

10

i am trying to do the half page curl feature. This is the code I am using:

#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;

But I encounter the following errors

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)

How can I solve it?

Fluxmeter answered 12/12, 2011 at 8:52 Comment(0)
H
23

your app is complaining it can not find CATransition Symbol.

Did you add the QuartzCore framework to your app?

If not add it: go to your target settings -> build phases -> link binary -> select the + button and select QuartzCore.

then import it where you need to use it:

      #import <QuartzCore/QuartzCore.h>
Honourable answered 12/12, 2011 at 9:10 Comment(3)
I thought I had added the framework, rechecked it and found that I haven't added. Thanks mate.Fluxmeter
Had this same problem but it had to do with code that I imported into my project from another library. In case anyone has that issue go into Build Phases and add the imported files to Compile Sources.Crispation
Thanks, @robhasacamera, that's exactly what I needed. Couldn't figure out why I was still having the problem with the framework and imports set up correctly.Drucilla

© 2022 - 2024 — McMap. All rights reserved.