ios导入静态库时报错:"_OBJC_CLASS_$_"

在导入老项目的静态库时遇到 '_OBJC_CLASS_$_' 报错,问题源于不兼容的设备架构。通过将目标设备改为iPhone4s解决了此问题。然而,接着出现了新的问题:对于architecture i386的未定义符号。通过在Link Binary With Libraries中添加libc++.tbd文件成功修复了这一问题,使得项目可以正常运行。
摘要由CSDN通过智能技术生成

报错:"_OBJC_CLASS_$_" 

ld: warning: ignoring file test/libXXX.a, file was built for archive which is not the architecture being linked (x86_64): test/libXXX.a
Undefined symbols for architecture x86_64:
  "_OBJC_CLASS_$_XXX", referenced from:
      objc-class-ref in ViewController.o
ld: symbol(s) not found for architecture x86_64
clang: error: linker command failed with exit code 1 (use -v to see invocation)

查看了很多方法,静态库导入没有问题

原因:

由于我导入的是比较老的项目,所以使用的架构已经不适用于当前的设备了

解决方法:

修改为合适的设备-iPhone4s,这个问题就没有再出现了。


但是出现了新的问题:Undefined symbols for architecture i386:

Undefined symbols for architecture i386:
  "operator delete(void*)", referenced from:
      -[XXX init] in libXXX.a(XXX.o)
      -[XXX initWithIP:andPort:] in libXXX.a(XXX.o)
      
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值