美文网首页
ld: object file ???.o was built

ld: object file ???.o was built

作者: 超哥__ | 来源:发表于2024-05-23 22:32 被阅读0次

错误: ld: object file ???.o was built with invalid arm64e ABI (128)
原因: XCode11混合链接XCode12+产生的二进制

经测试有如下规律

  • arm64进程兼容arm64模块
  • arm64e_2进程兼容arm64e_2模块
  • arm64e_0x80000002进程兼容arm64e_2/arm64e_0x80000002模块

XCode11/clang11 arm64e 生成二进制cpu_sub_type=2 (iOS12-13)
XCode12+/clang12+ arm64e 生成二进制cpu_sub_type=0x80000002 (iOS14+)

可以看出cpu_sub_type=2是苹果的一个设计bug,在iOS14后改为0x80000002且兼容旧版的2
同时也可以证明iOS12-13是XCode11-开发的,iOS14+是XCode12+开发的

相关文章

网友评论

      本文标题:ld: object file ???.o was built

      本文链接:https://www.haomeiwen.com/subject/rvtxqjtx.html