【问题标题】:Illegal Instruction 4 error while running the unit tests on Xcode在 Xcode 上运行单元测试时出现非法指令 4 错误
【发布时间】:2021-05-09 04:44:33
【问题描述】:

我最近更新到 Xcode 12.3 并解决了运行 carthage 依赖项的方法。构建很好,但是当我运行测试时,我得到了 Illegal Instruction 4 错误。我认为手臂架构问题会导致该问题。我使用来自迦太基的 Quick 和 Nimble,这些用于测试。我尝试将排除拱门和验证拱门设置为是,但它们都不起作用。

我无法将库从 carthage 移动到 pod 或 spm,因为库中有太多配置。更新到新的 Xcode 版本非常痛苦,尤其是在您使用 carthage 时。

更新:

我下载了 0.37 的 carthage 版本并将 xcframeworks 实现到项目中。要运行 xcframeworks 的依赖项,我运行以下命令:

carthage bootstrap --use-xcframeworks --no-use-binaries --platform ios

【问题讨论】:

    标签: swift xcode12 carthage


    【解决方案1】:

    如果您可以使用 Carthage 0.37.0 并且能够使用 XCFrameworks,那么 this answer 可能对您很有价值 ? 在这个版本中,他们添加了对 XCFrameworks 的支持,我觉得它很好用。特别是因为这种流行的解决方法终于可以再次被删除。

    【讨论】:

    • 感谢您的回复。我尝试了新的 carthage 版本,现在我的一个依赖项出现退出代码 65 错误。我做错了什么?
    • 请问能提供carthage的完整输出吗?
    • 这是我得到的错误。我调用的库是我的自定义 sdk。 “任务失败,退出代码 65:-sdk iphoneos ONLY_ACTIVE_ARCH=NO CODE_SIGNING_REQUIRED=NO CODE_SIGN_IDENTITY= CARTHAGE=YES archive VALIDATE_WORKSPACE=NO -archivePath / SKIP_INSTALL=YES GCC_INSTRUMENT_PROGRAM_FLOW_ARCS=NO CLANG_ENABLE_CODE_COVERAGE=NO STRIP_INSTALLED_PRODUCT=NO(在 MY 启动表示项目本身编译失败。”
    • 在 carthage 输出中有一个 xcodebuild 日志文件。它应该向您展示 Carthage 构建您的框架时发生了什么。通常这意味着,您的框架中存在配置错误。
    • 感谢您的帮助。我删除了迦太基的脚本并清除了旧库。 sdk 和项目运行良好。
    猜你喜欢
    • 2023-03-24
    • 1970-01-01
    • 1970-01-01
    • 2017-07-21
    • 2013-11-03
    • 2013-01-01
    • 2014-11-09
    • 1970-01-01
    • 2021-03-30
    相关资源
    最近更新 更多