3

I have been working on a project for a number of weeks that uses CocoaPods:

platform :ios, '7.0'
pod 'SVProgressHUD', '~>1.0'
pod 'Reachability', '~> 3.1.1'
pod 'UIDevice-Hardware', '~> 0.1.3'

The podfile hasn't changed for weeks either. However, today I suddenly got a build error and I can't work out what is wrong or why the build suddenly started failing.

ld: warning: ignoring file /Users/jim/Library/Developer/Xcode/DerivedData/App-bgzqwpbxhsvbvmhdfdvgafjurltc/Build/Products/Debug-iphoneos/libPods.a, missing required architecture arm64 in file /Users/jim/Library/Developer/Xcode/DerivedData/App-bgzqwpbxhsvbvmhdfdvgafjurltc/Build/Products/Debug-iphoneos/libPods.a (2 slices)
Undefined symbols for architecture arm64:
  "_OBJC_CLASS_$_SVProgressHUD", referenced from:
      objc-class-ref in BCRegisterViewController.o
  "_OBJC_CLASS_$_MSClient", referenced from:
      objc-class-ref in BCCentralService.o
ld: symbol(s) not found for architecture arm64
clang: error: linker command failed with exit code 1 (use -v to see invocation)

Any ideas what could be wrong? I've looked at all projects and targets and they list 64bit as a valid architecture.

ConfusedNoob
  • 9,826
  • 14
  • 64
  • 85

1 Answers1

3

I ran into this same problem. For me, the issue was the the Pods project (in the shared workspace) was not setup to build for arm64.

To fix this, click the Pods project, and change the settings for the overall project and every target to include arm64:

arm64 architectures pod 64-bit build cocoapods

This will build all the pods with arm64 support as well, which should resolve the linker errors.

reinpk
  • 624
  • 7
  • 12
  • 1
    Thanks. This helped me find my cocoapods issue, which was that the project was set to Mac OSX for some reason, not iOS!! – ingh.am Sep 30 '15 at 11:02