3

I recently upgraded to Xcode 4 / iOS SDK 4.3 and am now having problems with GreyStripe's ad solution when building with base SDK 4.3. Previously I was building with Xcode 3 and a base SDK of 4.0 and Greystripe's ads were working fine.

Now when I build using base SDK 4.3, I get the following error:

Undefined symbols for architecture i386:
  "_OBJC_CLASS_$_GSAdSlotDescription", referenced from:
      objc-class-ref in AppDelegate.o
  "_OBJC_CLASS_$_GSAdEngine", referenced from:
      objc-class-ref in AppDelegate.o
ld: symbol(s) not found for architecture i386
collect2: ld returned 1 exit status

This occurs when I build for iPhone 4.0 simulator, 4.1 simulator and 4.2 simulator and 4.3 simulator.

What's the problem here?

Cheers.

BingoBoy
  • 185
  • 2
  • 7

2 Answers2

3

Just add the class file [eg : FileOperations.m] in Compile sources which is located in the Project target.

Sergey Glotov
  • 20,200
  • 11
  • 84
  • 98
Say2Manuj
  • 709
  • 10
  • 20
0

To fix this open your project properties and find "architectures" and "valid architectures" properties. Click on both of them and select "Other". Then add i386 architecture.

I think the problem is that simulator is run on i386 system (your mac). But I'm surprised why this error doesn't appear in xcode 3.2.6.