jjzjj

ios - 错误 : "File was built for archive which is not the architecture being linked (armv7s)"

coder 2023-07-24 原文

我已经构建了我自己的静态 C++ 库,它是使用以下设置构建的:

  • 架构:armv7、armv7s
  • 仅构建事件架构:否
  • 支持平台:iOS
  • 有效架构:armv7、armv7s

库项目构建良好,我得到了 .a 文件(我已经清理了构建文件夹并再次构建项目以确保我的设置有效)。

我已将库(.a 文件)添加到我的 iOS 项目,但即使我在 iOS 项目上设置了完全相同的设置,项目也不会构建:

  • 架构:armv7s、armv7
  • 仅构建事件架构:是
  • 支持平台:iOS
  • 有效架构:armv7、armv7s

我一直收到这个错误:

ld: warning: ignoring file /Users/hidden/Library/Developer/Xcode/DerivedData/HelloWorldCppLib-fomvvtklwijvqicyhahxleiscein/Build/Products/Debug-iphoneos/libHelloWorldCppLib.a, file was built for archive which is not the architecture being linked (armv7s): /Users/hidden/Library/Developer/Xcode/DerivedData/HelloWorldCppLib-fomvvtklwijvqicyhahxleiscein/Build/Products/Debug-iphoneos/libHelloWorldCppLib.a

我错过了什么?它告诉我 .a 文件不是为 armv7s 构建的,但这正是我构建库时使用的设置。

最佳答案

我自己也遇到过类似的问题。 @graver的解决方案绝对有效。

问题是库是为 armv7 构建的而不是 armv7s .您可以使用 lipo <path/to/lib.a> -info 自行验证.

设置Build Active Architectures Only No 的选项解决了这个问题。

希望这对您有所帮助。

关于ios - 错误 : "File was built for archive which is not the architecture being linked (armv7s)",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14828693/

有关ios - 错误 : "File was built for archive which is not the architecture being linked (armv7s)"的更多相关文章

随机推荐