6

Possible Duplicate:
Xcode 4 Final - “armv6 armv7” issue while linking with armv6 libs

Everything was working fine until I provisioned on my actual phone running iOS 4.3.3. I have automatic referencing turned on so I don't have to worry about releasing anything, but maybe I'm doing something wrong, the concept of not releasing is new to me. I get these great error:

Undefined symbols for architecture armv7:
"_objc_storeStrong", referenced from:
  -[AppDelegate .cxx_destruct] in AppDelegate.o
  -[DistanceViewController .cxx_destruct] in DistanceViewController.o
  -[SlopeViewController .cxx_destruct] in SlopeViewController.o
  -[MidpointViewController .cxx_destruct] in MidpointViewController.o
  -[AreaViewController .cxx_destruct] in AreaViewController.o
  -[PerimeterViewController .cxx_destruct] in PerimeterViewController.o
  -[VolumeViewController .cxx_destruct] in VolumeViewController.o
  ...
"_objc_retain", referenced from:
  +[__ARCLite__ load] in libarclite_iphoneos.a(arclite.o)
  -[AppDelegate application:didFinishLaunchingWithOptions:] in AppDelegate.o
  -[AppDelegate applicationWillResignActive:] in AppDelegate.o
  -[AppDelegate applicationDidEnterBackground:] in AppDelegate.o
  -[AppDelegate applicationWillEnterForeground:] in AppDelegate.o
  -[AppDelegate applicationDidBecomeActive:] in AppDelegate.o
  -[AppDelegate applicationWillTerminate:] in AppDelegate.o
  ...
 (maybe you meant: _objc_retainedObject)
"_objc_release", referenced from:
  _main in main.o
  -[AppDelegate application:didFinishLaunchingWithOptions:] in AppDelegate.o
  -[AppDelegate applicationWillResignActive:] in AppDelegate.o
  -[AppDelegate applicationDidEnterBackground:] in AppDelegate.o
  -[AppDelegate applicationWillEnterForeground:] in AppDelegate.o
  -[AppDelegate applicationDidBecomeActive:] in AppDelegate.o
  -[AppDelegate applicationWillTerminate:] in AppDelegate.o
  ...
"_objc_retainAutoreleasedReturnValue", referenced from:
  _main in main.o
  -[AppDelegate application:didFinishLaunchingWithOptions:] in AppDelegate.o
  -[ViewController alertView:clickedButtonAtIndex:] in ViewController.o
  -[ViewController viewDidLoad] in ViewController.o
  -[DistanceViewController done:] in DistanceViewController.o
  -[DistanceViewController solve:] in DistanceViewController.o
  -[DistanceViewController viewDidLoad] in DistanceViewController.o
  ...
ld: symbol(s) not found for architecture armv7
clang: error: linker command failed with exit code 1 (use -v to see invocation)
Community
  • 1
  • 1
Chris
  • 7,270
  • 19
  • 66
  • 110
  • 2
    Show some code. I assume you are aware that weak references are not supported on 4.3. Do you have any release or autorelease method calls? have you run the Analyzer? – zaph Sep 14 '11 at 22:16
  • I am aware of that, I did double check though and there are no weak references. Nothing is being manually released. The analyzer turns up free of errors – Chris Sep 14 '11 at 23:22
  • 1
    You say your phone is running iOS 4.2—doesn’t ARC require iOS 4.3? – Jeff Kelley Sep 15 '11 at 01:52
  • @Jeff: Bingo, I totally missed the OS being used, nice catch. – zaph Sep 15 '11 at 02:07
  • Actually, I made a mistake. My phone's running 4.3.3. – Chris Sep 15 '11 at 02:28
  • @Jeff and Zaph: According to Apple, ARC (with the exception of weak references) is full supported in iOS 4.0 and above as long as you're base SDK is iOS 5 or above. I personally use it in my iOS 4.2 targeted app, so I can't vouch for 4.0 support, but 4.3 is definitely not the minimum. – Ben Baron Oct 23 '12 at 20:14

0 Answers0