Search code examples
iosprintingintegrationepson

Epson Printer SDK for iOS 8


I have the problem when integrating epson SDK, downloaded from

https://download.epson-biz.com/modules/pos/index.php?page=soft&pcat=3&scat=50 (ePos-Print SDK)

It is working fine if running the sample or follow the guide which copy the ePos-Print.h and libeposprint.a into project and add to framework, yes, working...

However, if you are open the project with Pod, *.xcworkspace and try to build it, the project is failed and with the error:

Undefined symbols for architecture arm64:

"_OBJC_CLASS_$_EASession", referenced from:

  objc-class-ref in libeposprint.a(EpsonMfiIo.o)

"_OBJC_CLASS_$_EAAccessoryManager", referenced from:

  objc-class-ref in libeposprint.a(EpsonMfiFinder.o)

  objc-class-ref in libeposprint.a(EpsonMfiIo.o)

ld: symbol(s) not found for architecture arm64

I have tried few solutions found in stackoverflow, which modify the architectures and valid architecture still dont have the luck.

Anyone have experience about this? Helps are much appreciated :)


Solution

  • A quick search reveals that EASession and EAAccessoryManager are classes from the ExternalAccessory framework. Simply add the ExternalAccessory framework to your project and the issue should be fixed.