It seems like the 2.3.0 version of the Google Cast SDK for iOS stopped supporting the arm64
architecture (it does support x86_64
though, making it work in the 64-bit simulator)
λ: cd GoogleCast.framework
λ: file GoogleCast
GoogleCast: Mach-O universal binary with 5 architectures
GoogleCast (for architecture cputype (16777228) cpusubtype (0)): current ar archive
GoogleCast (for architecture armv7): current ar archive random library
GoogleCast (for architecture armv7s): current ar archive random library
GoogleCast (for architecture i386): current ar archive random library
GoogleCast (for architecture x86_64): current ar archive random library
Therefore, I get this error when building for a physical device:
ld: archive has no table of contents file '/Users/****/Frameworks/GoogleCast.framework/GoogleCast' for architecture arm64
If you install 2.3.0.1 via CocoaPods, insert the code below in Podfile.
I raised this issue https://code.google.com/p/google-cast-sdk/issues/detail?id=324&can=1&q=arm64
adding -all_load in Other Linker Flag made it work with arm64 but I still get warnings about a missing dwarf:
"warning: (arm64) /Users/marksp/Documents/src/tvmp-iview-ios/Pods/google-cast-sdk/GoogleCastFramework-2.3.0-Release/GoogleCast.framework/GoogleCast(CastProtos.o) object file doesn't contain DWARF debug information"
If -all_load flag doesn't work for you (because of 3rd party libraries)
You can use
ranlib
like this :ranlib GoogleCast.framework/Versions/A/GoogleCast
Source : google cast mailing list