我的一个项目使用静态库时遇到此错误。该项目在 iOS 设备上运行良好。但不是在模拟器中。静态库不是我的,所以我无法为 i386 重新编译它。但这是一个硬件驱动程序,适用于 iPhone。所以在模拟器中运行时我真的不需要这个库。就像设备中存在附件一样,应用程序将具有不同的流程。
所以我必须保留对这个文件的引用。但只需要在 iOS 设备中。在模拟器中运行时不需要为 UI 和其他测试目的运行应用程序。
我怎样才能避免这个错误?无论如何配置目标或方案以避免在模拟器中运行时的目标文件/库?
ld: warning: ignoring file
/Framework/iSmartSDK/libiSmartSDK_Lib.a, missing required architecture i386 in file
/Framework/iSmartSDK/libiSmartSDK_Lib.a (2 slices)
Undefined symbols for architecture i386:
"_OBJC_CLASS_$_iSmart", referenced from:
objc-class-ref in SmartCardReaderVC.o
ld: symbol(s) not found for architecture i386
clang: error: linker command failed with exit code 1 (use -v to see invocation)