Search code examples
iphoneobjective-cxcodeiosios4

Undefined symbols for architecture armv6, Updating to iOS 4.3


I am patching upp an application from iOS 4.2 to 4.3 using new xcode4. With no changes made, except setting iOS to 4.3, I created entitlements and go!

Message I get is:

Undefined symbols for architecture armv6:"function", referenced from:

Ive tried to Clean the project, reinstalling xcode. I uninstalled also the xcode4 demo version. I also tried to set to Optimized armv7.

I would be very happy for some help, I'm stuck. Really.

Thanks very much in advance!


Solution

  • For this type of error, this is what I typically see:

     Undefined symbols for architecture armv6:
      "_OBJC_CLASS_$_MyCustomController", referenced from:
          objc-class-ref in SomeOtherController.o
    ld: symbol(s) not found for architecture armv6
    

    Almost every time I see this error it is caused by hidden/invisible characters in the import statement in SomeOtherController.h or SomeOtherController.m. So, look at both your .h and .m file, find the line that looks like this:

    #import "MyCustomController.h"
    

    Delete this line and retype it (do not copy/paste it -- you'll just repaste the offending hidden character).