在Swift项目中使用Objective-C文件进行编译

时间:2019-03-19 09:28:26

标签: swift compilation

我正在使用使用模糊处理的框架。该框架使用头文件进行混淆。 例如文件:

#define funcOne            JJmYVBhJqZYKCTJJrEsEr
#define funcTwo            zKqquIfbcRKqMhPXl
#define funcThree          pDeUyAXpAircdITBKBZacBzgCyIL
#define funcFour           SUjJeKmteuaFbcZzg

要在“构建设置”下运行此文件,请在“其他C标志”和“其他C ++标志”下添加头文件“ ExternalObfuscate.h”

通过这样做,Objective-c中的项目运行良好。

但是问题是我正在迅速使用项目

我将框架添加到Swift项目的步骤是:

我添加“ Bridging-Header”并添加头文件

#import "ExternalObfuscate.h"

还将位置添加到“其他C标志”和“其他C ++标志”

那没有用,所以我决定将所有定义复制到同样没有用的“ Bridging-Header”。

我一直都犯的错误是

    Undefined symbols for architecture arm64:
  "_OBJC_CLASS_$_funcOne", 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)

目前不知道该如何解决,有人有任何建议吗?

0 个答案:

没有答案