32

We just updated to XCode 5 GM, and a project (iPhone only targeted at iOS 7) that built fine under DP 5 now gives the error:

ld: in /Users/dan/Documents/Projects/ImageProApp/Pods/SparkInspector/SparkInspector.framework/SparkInspector(ExplorerViewState.o), too many compact unwind infos in function anon for architecture i386
clang: error: linker command failed with exit code 1 (use -v to see invocation)

We are using CocoaPods to include several components, CocoaAsyncSocket, CocoaLumberack, Spark Inspector and Reachability. My guess is that were we to remove Spark Inspector, this error would simply reference another component.

Can anyone recommend a fix? Tell me what the compiler/linker flags are to use non-compact unwind infos?

Thanks,

Dan

Lucas Eduardo
  • 11,525
  • 5
  • 44
  • 49
dang
  • 587
  • 1
  • 5
  • 10
  • This might be a cocoapods issue. Could be good to open an issue on Github. https://github.com/CocoaPods/CocoaPods/issues?state=open – ray Sep 11 '13 at 02:49
  • @ray There is indeed an issue with the current cocoapods when you archive. https://github.com/CocoaPods/CocoaPods/pull/1352 – mattyohe Sep 11 '13 at 03:59
  • 1
    @mattyohe Hmm, I was able to archive my app just fine after updating the Build Active Architectures for Debug profile. Linking still fails when targeting simulator however, so I'm inclined to think this particular issue is related to the 64-bit stuff just introduced today and the simulator not being equipped for it... somehow. – ray Sep 11 '13 at 04:05
  • 1
    A similar discussion is happening on the [dev forum](https://devforums.apple.com/message/885426#885426). – Ash Furrow Sep 11 '13 at 14:51
  • This is not strictly related to CocoaPods as I have this same error, but I am not using CocoaPods. – Mark Sep 16 '13 at 08:12

4 Answers4

33

UPDATE: Google released a fix for the Google Analytics library https://code.google.com/p/analytics-issues/issues/detail?id=338

See version v3.01 here: https://developers.google.com/analytics/devguides/collection/ios/resources

FWIW, with the Google Analytics library, the link error only happens when deployment target is set to 7.0. If you drop the deployment target to 6.1 for example linking works without error.

For reference, with respect to Google Ananlytics, I've posted an issue in Google's bug tracker.

Mike Vosseller
  • 4,097
  • 5
  • 26
  • 28
  • Wonderful! It works, but I'd like an explanation *why*, since I was building iOS7 in the sim anyway. – ray Sep 11 '13 at 18:19
  • Yes, I confirm too. it is not a workaround, this is the best way to get rid of the message. – Martin Nov 12 '14 at 15:39
7

Workaround: Build for device.

Not so much of a fix, but try building your app for a device rather than simulator. Might be related to the introduction of 64-bit.

I can archive my app, but when I try to build/run for simulator, it fails at linking with the same error you're receiving.

To be clear, I'm also using cocoapods.

ray
  • 1,966
  • 4
  • 24
  • 39
7

changing " iOS Deployment Target to something less than "iOS 7.0"

inside

"Project" -> Build Settings -> Deployment

worked for me, i guess it has something to do with the configuration used to build the external lib. i was facing the issue with the simulator only, when included Jot Touch SDK

Shaz
  • 958
  • 7
  • 9
1

this answer might come a little late, but i had the same issue with a third party framework. For some reason we have added the -all_load flag to the build settings, but when i removed it, we were able to build the project.

So go to:

Project -> Build Settings -> Other linker flags

and remove the -all_load flag.

Hope this helps.

dirtydanee
  • 6,081
  • 2
  • 27
  • 43