Estimote / iOS-Fleet-Management-SDK

Estimote Fleet Management SDK for iOS
https://developer.estimote.com
MIT License
1.18k stars 398 forks source link

Linker Error for EstimoteSDK direct download. #261

Closed longwei closed 4 years ago

longwei commented 7 years ago

Hi,

I am following iOS tutorial http://developer.estimote.com/ibeacon/tutorial/part-1-setting-up/ but run into an error during build. XCode complains: warning:

ignoring file /$project_folder/Estimote/EstimoteSDK.framework/EstimoteSDK, file was built for unsupported file format ( 0x76 0x65 0x72 0x73 0x69 0x6F 0x6E 0x20 0x68 0x74 0x74 0x70 0x73 0x3A 0x2F 0x2F ) which is not the architecture being linked (arm64)

then, of course, undefined error:

Undefined symbols for architecture arm64: "_OBJCCLASS$_ESTConfig", referenced from: objc-class-ref in AppDelegate.o ld: symbol(s) not found for architecture arm64

I also tried the auto-generated project templates from https://cloud.estimote.com/#/apps. Both Obj-C, and Swift template have the same issue.

However, if I install the iOS SDK through cocoapods works. pod 'EstimoteSDK'

I compare the two EstimoteSDK.

one from https://github.com/Estimote/iOS-SDK/archive/master.zip md5 7bec9b48290614126279bf4b5034d4aa and it is just a ASCII text file

version https://git-lfs.github.com/spec/v1 oid sha256:7cedd60f7c05c94a86f0e8fdf20c62de70baa34881c66873295fbe9f1802d52f size 105202560

the one from cocoapods md5 90a37062dce1de7fc63b733d05bb21bd and it is a Mach-O universal binary with 5 architectures: [arm_v7: current ar archive] [arm_v7s] [i386] [x86_64] [arm64]

Is it master.zip archive from github correct? If so, what configuration I need to change in XCode?

Thanks

rafaelrsilva commented 7 years ago

I'm having a same problem.

Cocoapods is linking to a version 4.18.0, but the last release is 4.19.0

I've tested 4.18.0 and work well

https://github.com/Estimote/iOS-SDK/releases/tag/4.18.0