使用 Xcode 12.5 和 Mapbox 2021

问题描述

我在尝试更新 MapBox 以使用 Apple 现在要求发布到 App Store 的最新版本的 XCode 12.5 时遇到 Carthage 退出代码 65 错误。我知道退出代码 65 是一个相对常见的错误,可以追溯到很多年前,对于不同的存储库,修复似乎因包而异。当我的 Mac 上有两个版本的 XCode(新的 12.5 和旧的 11.6)时,经常会发生这种情况。如果可能的话,我宁愿不删除旧版本的 Xcode,否则我已经尝试了我能想到的所有可能的修复程序。如果有人能建议我遗漏的东西或在终端输出或购物车文件中发现某些东西,我将不胜感激。

这是我采取的步骤。

  • 安装最新的 Carthage 0.38
  • 使用普通的 Product-Clean Build Folder 选项清理项目 (XCode 似乎已经消除了旧的 Deep Clean of Command Option 在 12.5 中 Shift K 就像我尝试什么也没发生一样)
  • 通过转到删除派生数据文件夹的内容 Xcode-Preferences-Locations-Derived Data 并删除所有 子文件
  • 通过运行确保 X-code 正在运行 12.5 的 Xcode-tools xcode-select -s /Applications/Xcode.app/Contents/Developer 中 终端,然后检查首选项 - 位置 - 见下图
  • 验证 Cartfile 的内容。购物车文件看起来像:github "mapBox/mapBox-navigation-ios" ~> 0.40.0
  • 在终端中,运行 carthage update --platform iOS --use-xcframeworks

在终端中,所有常用库似乎都已成功获取、检出和构建。以下是终端显示失败的内容

*** Fetching mapBox-navigation-ios
*** Fetching mapBox-speech-swift
*** Fetching mapBox-events-ios
*** Downloading binary-only framework MapBox-iOS-SDK at "https://www.mapBox.com/ios-sdk/MapBox-iOS-SDK.json"
*** Fetching turf-swift
*** Fetching Solar
*** Downloading binary-only framework MapBoxNavigationNative at "https://www.mapBox.com/ios-sdk/MapBoxNavigationNative.json"
*** Downloading binary-only framework MapBoxAccounts at "https://www.mapBox.com/ios-sdk/MapBoxAccounts.json"
*** Fetching mapBox-directions-swift
*** Fetching polyline
*** Checking out polyline at "v4.2.1"
*** Checking out mapBox-directions-swift at "v0.31.1"
*** Checking out Solar at "2.2.0"
*** Checking out mapBox-navigation-ios at "v0.40.0"
*** Checking out turf-swift at "v0.3.0"
*** Checking out mapBox-events-ios at "v0.10.8"
*** Checking out mapBox-speech-swift at "v0.3.1"
*** xcodebuild output can be found in /var/folders/0h/pw1tqvms5l7_37h9ljl4vn1h0000gn/T/carthage-xcodebuild.iVQJPj.log
*** Downloading binary-only framework MapBox-iOS-SDK at "https://www.mapBox.com/ios-sdk/MapBox-iOS-SDK.json"
*** Downloading binary-only framework MapBoxAccounts at "https://www.mapBox.com/ios-sdk/MapBoxAccounts.json"
*** Downloading binary-only framework MapBoxNavigationNative at "https://www.mapBox.com/ios-sdk/MapBoxNavigationNative.json"
*** Building scheme "MapBoxMobileEvents" in MapBoxMobileEvents.xcodeproj
*** Building scheme "MapBoxSpeech iOS" in MapBoxSpeech.xcodeproj
*** Building scheme "polyline" in polyline.xcodeproj
*** Building scheme "Solar iOS" in Solar.xcodeproj
*** Building scheme "Turf iOS" in Turf.xcodeproj
*** Building scheme "MapBoxDirections iOS" in MapBoxDirections.xcodeproj
Build Failed
    Task Failed with exit code 65:
    /usr/bin/xcrun xcodebuild -project /Users/tester/Desktop/myprojects/myapp/Carthage/Checkouts/mapBox-directions-swift/MapBoxDirections.xcodeproj -scheme MapBoxDirections\ iOS -configuration Release -derivedDataPath /Users/tester/Library/Caches/org.carthage.CarthageKit/DerivedData/12.5.1_12E507/mapBox-directions-swift/v0.31.1 -sdk iphoneos ONLY_ACTIVE_ARCH=NO CODE_SIGNING_required=NO CODE_SIGN_IDENTITY= CARTHAGE=YES archive VALIDATE_WORKSPACE=NO -archivePath /var/folders/0h/pw1tqvms5l7_37h9ljl4vn1h0000gn/T/mapBox-directions-swift SKIP_INSTALL=YES GCC_INSTRUMENT_PROGRAM_FLOW_ARCS=NO CLANG_ENABLE_CODE_COVERAGE=NO STRIP_INSTALLED_PRODUCT=NO FRAMEWORK_SEARCH_PATHS=$(inherited)\ /var/folders/0h/pw1tqvms5l7_37h9ljl4vn1h0000gn/T/carthage-xcframework-fADZ (launched in /Users/tester/Desktop/myprojects/myapp/Carthage/Checkouts/mapBox-directions-swift)

This usually indicates that project itself Failed to compile. Please check the xcodebuild log for more details: /var/folders/0h/pw1tqvms5l7_37h9ljl4vn1h0000gn/T/carthage-xcodebuild.iVQJPj.log

当我在此错误后尝试运行项目时,它显示以下错误

/Users/tester/Desktop/myprojects/myapp/Errands.swift:16:8: 
Module compiled with Swift 5.2.4 cannot be imported by the Swift 5.4.2 compiler

/Users/tester/Desktop/myprojects/myapp/Carthage/Build/iOS/MapBoxDirections.framework/Modules/MapBoxDirections.swiftmodule/x86_64-apple-ios-simulator.swiftmodule

Cartfile 是否存在问题,如 0.40.0 中的问题。

还有什么我应该做的吗?提前感谢您的任何建议。

enter image description here

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)