我参与了一个较旧的项目,该项目需要为其使用的扫描仪更新 SDK。新的 SDK 已支持 64 位,因此应用程序需要更新。 SDK是通过拖放到项目中安装的,但之后在构建时出现以下错误:
注意:我收到一个涉及 arm64
的错误,但这个错误目前显示为 armv7
因为我摆弄了。
Undefined symbols for architecture armv7:
"_AVMetadataObjectTypeUPCECode", referenced from: -[SoftScanController initWithDeviceObject:] in libScanApi.a(SoftScanController.o) "_AVMetadataObjectTypeEAN8Code", referenced from: -[SoftScanController initWithDeviceObject:] in libScanApi.a(SoftScanController.o)
"_AVMetadataObjectTypeCode93Code", referenced from: -[SoftScanController initWithDeviceObject:] in libScanApi.a(SoftScanController.o) "_AVMediaTypeVideo", referenced from: -[SoftScan initWithDelegate:] in libScanApi.a(SoftScanController.o) "_AVMetadataObjectTypeAztecCode", referenced from: -[SoftScanController initWithDeviceObject:] in libScanApi.a(SoftScanController.o) "_AVMetadataObjectTypeEAN13Code", referenced from: -[SoftScanController initWithDeviceObject:] in libScanApi.a(SoftScanController.o)
"_AVLayerVideoGravityResizeAspectFill", referenced from: -[SoftScan start:] in libScanApi.a(SoftScanController.o) "_OBJC_CLASS_$_AVCaptureVideoPreviewLayer", referenced from: objc-class-ref in libScanApi.a(SoftScanController.o) "_AVMetadataObjectTypePDF417Code", referenced from: -[SoftScanController initWithDeviceObject:] in libScanApi.a(SoftScanController.o) "_OBJC_CLASS_$_AVCaptureSession", referenced from: objc-class-ref in libScanApi.a(SoftScanController.o) "_AVMetadataObjectTypeCode39Code", referenced from: -[SoftScanController initWithDeviceObject:] in libScanApi.a(SoftScanController.o)
"_AVMetadataObjectTypeCode128Code", referenced from: -[SoftScanController initWithDeviceObject:] in libScanApi.a(SoftScanController.o) "_AVMetadataObjectTypeQRCode", referenced from: -[SoftScanController initWithDeviceObject:] in libScanApi.a(SoftScanController.o)
"_OBJC_CLASS_$_AVCaptureMetadataOutput", referenced from: objc-class-ref in libScanApi.a(SoftScanController.o) "_AVMetadataObjectTypeCode39Mod43Code", referenced from: -[SoftScanController initWithDeviceObject:] in libScanApi.a(SoftScanController.o)
"_OBJC_CLASS_$_AVCaptureDeviceInput", referenced from: objc-class-ref in libScanApi.a(SoftScanController.o) "_OBJC_CLASS_$_AVCaptureDevice", referenced from: objc-class-ref in libScanApi.a(SoftScanController.o) ld: symbol(s) not found for architecture armv7 clang: error: linker command failed with exit code 1 (use -v to see invocation)
出现的所有错误均与扫描仪的 SDK 相关。 我当前的build设置是:
架构:标准架构
基础 SDK:最新(9.0)
仅构建主动架构:否
有效架构:armv7 armv7s arm64
任何帮助都会受到欢迎。
最佳答案
您似乎没有将您的项目与 AVFoundation
框架链接起来。
关于ios - XCode - 架构 armv7 arm64 的 undefined symbol ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33118104/