带Swift的Epson打印机找不到arm64的符号

时间:2019-02-13 03:09:34

标签: objective-c swift xcode precompiled-headers epson

尝试构建项目时收到以下错误:

Undefined symbols for architecture arm64:
"_OBJC_CLASS_$_Epos2Printer", referenced from:
  objc-class-ref in ViewController.o
ld: symbol(s) not found for architecture arm64
clang: error: linker command failed with exit code 1 (use -v to see 
invocation)

这是我的项目导航器的外观:

enter image description here

桥接标题如下:

#ifndef Bridging_Header_h
#define Bridging_Header_h


#import "ePOS2.h"
#import "ePOSEasySelect.h"


#endif /* Bridging_Header_h */

构建阶段如下:

enter image description here

Objective-C Bridging Header是:

enter image description here

任何对此的帮助将不胜感激!谢谢:)

3 个答案:

答案 0 :(得分:0)

有两种可能性。 (1)您已忘记链接包含Epos2Printer函数的库,或者(2)您已链接该库,但其中不包含arm64的切片。

如果是(1),则链接到ePOS SDK应该可以解决问题。现在是(2),您需要在arm64支持下获取该库的副本。

答案 1 :(得分:0)

我有同样的问题, 运行示例项目时,我发现项目中缺少“ libxml2.2.tbd”。 添加丢失的文件后,错误消失了:)) 爱普生文档不推荐这样做,很可悲

答案 2 :(得分:0)

如果您尝试使用 *.xcworkspace 打开项目,则需要添加 ExternalAccessory.framework 引用。喜欢这张图。

enter image description here