代码之家  ›  专栏  ›  技术社区  ›  ajeet sharma

错误-分段错误:Xcode 10中的11

  •  2
  • ajeet sharma  · 技术社区  · 6 年前

    我在Xcode 9工作。代码运行良好,但当我在Xcode 10中使用相同的代码时,就会出现编译时错误。

    这是错误:

    1.  While emitting SIL for 'fetchConsumerRecommendations(completionHandler:failureHandler:)' at /Users/shahezad/Desktop/Newcode/foodkonnectconsumer-ios/Food/FirebaseManager.swift:2578:5
    2.  While silgen emitFunction SIL function "@$S4Food15FirebaseManagerC28fetchConsumerRecommendations17completionHandler07failureH0yySaySSGc_ys5Error_pSgctFZ".
     for 'fetchConsumerRecommendations(completionHandler:failureHandler:)' at /Users/shahezad/Desktop/Newcode/foodkonnectconsumer-ios/Food/FirebaseManager.swift:2578:5
    3.  While silgen closureexpr SIL function "@$S4Food15FirebaseManagerC28fetchConsumerRecommendations17completionHandler07failureH0yySaySSGc_ys5Error_pSgctFZySo19FIRDocumentSnapshotCSg_AItcfU_".
     for expression at [/Users/shahezad/Desktop/Newcode/foodkonnectconsumer-ios/Food/FirebaseManager.swift:2584:285 - line:2615:9] RangeText="{ (documentSnapshot, error) in
    
    
                if error == nil {
    
                    if (documentSnapshot?.exists)!{
    
                        print("Consumer Recommendations - \(describing: documentSnapshot?.data())")
    
                        let dictOnboarding:NSDictionary = (documentSnapshot?.data())! as NSDictionary
    
                        print("\(dictOnboarding.allKeys)")
    
                        completionHandler(dictOnboarding.allKeys as! [String])
    
                    }
                    else{
    
    
                        completionHandler([])
    
                    }
    
                }
                else{
    
                    failureHandler(error)
    
                }
    
    
            }"
    error: Segmentation fault: 11
    

    我不知道这是代码的问题。

    1 回复  |  直到 6 年前
        1
  •  1
  •   Muzamil    6 年前

    这个问题背后可能有两个原因。应用程序中的某个播客可能正在使用CommonCrypto,或者Swift语言版本可能不明确。这两个问题都有以下解决方案:

    方法1

    1. 在整个项目中搜索单词CommonCrypto。
    2. 如果有包含该头导入的Pod,请从Pod文件中删除该Pod并执行Pod安装。
    3. 清理并建立项目。
    4. 再次将Pod添加到Pod文件并执行Pod安装。
    5. 如果可能的话,使用一个真实的设备重新清理并构建项目。

    如果你没有这个Pod,也许你可以试着用一些你在项目中可能遇到的旧Pod做同样的步骤。

    附加信息:如果在Pod中有一些代码错误,首先需要解决该代码问题,然后再次尝试编译项目。

    方法2

    确保您的项目Swift语言版本是正确的版本。对于Xcode 10。我建议您使用Swift 4.2,或者您可以选择代码当前所用的版本。 Your can follow your Build Settings in your target as in the this image

    我希望这会有帮助

    当做