命令由于信号失败:分段故障:11

我收到错误…

命令由于信号失败:分段故障:11

…当试图编译我的Swift应用程序。 我正在使用Xcode 6.1,试图在iOS 8.1上构buildiPhone 5。

我的代码

import UIKit class ViewController: UIViewController { @IBOutlet weak var username: UITextField! @IBAction func signIn(sender: AnyObject) { PFUser.logInWithUsernameInBackground(username.text, password:"mypass") { (user: PFUser!, error: NSError!) -> Void in if user != nil { println("Logged In") } else { func myMethod() { var user = PFUser() user.username = username.text user.password = " " user.signUpInBackgroundWithBlock { (succeeded: Bool!, error: NSError!) -> Void in if error == nil { // Hooray! Let them use the app now. } else { println("Signed Up") } } } println(error) } } } override func viewDidLoad() { super.viewDidLoad() // Do any additional setup after loading the view, typically from a nib. Parse.setApplicationId("key here") } override func didReceiveMemoryWarning() { super.didReceiveMemoryWarning() // Dispose of any resources that can be recreated. } } 

和错误文本!

 CompileSwift normal arm64 /Users/Alec/Desktop/Re-Chat/Re-Chat/Re-Chat/ViewController.swift cd /Users/Alec/Desktop/Re-Chat/Re-Chat /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/swift -frontend -c -primary-file /Users/Alec/Desktop/Re-Chat/Re-Chat/Re-Chat/ViewController.swift /Users/Alec/Desktop/Re-Chat/Re-Chat/Re-Chat/AppDelegate.swift -target arm64-apple-ios8.0 -Xllvm -aarch64-use-tbi -target-cpu cyclone -target-abi darwinpcs -sdk /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS8.1.sdk -I /Users/Alec/Library/Developer/Xcode/DerivedData/Re-Chat-awwdkmqavitiqkcdsphwnhzhzzfb/Build/Products/Debug-iphoneos -F /Users/Alec/Library/Developer/Xcode/DerivedData/Re-Chat-awwdkmqavitiqkcdsphwnhzhzzfb/Build/Products/Debug-iphoneos -F /Users/Alec/Desktop/Re-Chat/Re-Chat/Re-Chat -g -import-objc-header /Users/Alec/Desktop/Re-Chat/Re-Chat/Re-Chat/Re-Chat-Bridging-Header.h -module-cache-path /Users/Alec/Library/Developer/Xcode/DerivedData/ModuleCache -Xcc -I/Users/Alec/Library/Developer/Xcode/DerivedData/Re-Chat-awwdkmqavitiqkcdsphwnhzhzzfb/Build/Intermediates/Re-Chat.build/Debug-iphoneos/Re-Chat.build/swift-overrides.hmap -Xcc -iquote -Xcc /Users/Alec/Library/Developer/Xcode/DerivedData/Re-Chat-awwdkmqavitiqkcdsphwnhzhzzfb/Build/Intermediates/Re-Chat.build/Debug-iphoneos/Re-Chat.build/Re-Chat-generated-files.hmap -Xcc -I/Users/Alec/Library/Developer/Xcode/DerivedData/Re-Chat-awwdkmqavitiqkcdsphwnhzhzzfb/Build/Intermediates/Re-Chat.build/Debug-iphoneos/Re-Chat.build/Re-Chat-own-target-headers.hmap -Xcc -I/Users/Alec/Library/Developer/Xcode/DerivedData/Re-Chat-awwdkmqavitiqkcdsphwnhzhzzfb/Build/Intermediates/Re-Chat.build/Debug-iphoneos/Re-Chat.build/Re-Chat-all-target-headers.hmap -Xcc -iquote -Xcc /Users/Alec/Library/Developer/Xcode/DerivedData/Re-Chat-awwdkmqavitiqkcdsphwnhzhzzfb/Build/Intermediates/Re-Chat.build/Debug-iphoneos/Re-Chat.build/Re-Chat-project-headers.hmap -Xcc -I/Users/Alec/Library/Developer/Xcode/DerivedData/Re-Chat-awwdkmqavitiqkcdsphwnhzhzzfb/Build/Products/Debug-iphoneos/include -Xcc -I/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include -Xcc -I/Users/Alec/Library/Developer/Xcode/DerivedData/Re-Chat-awwdkmqavitiqkcdsphwnhzhzzfb/Build/Intermediates/Re-Chat.build/Debug-iphoneos/Re-Chat.build/DerivedSources/arm64 -Xcc -I/Users/Alec/Library/Developer/Xcode/DerivedData/Re-Chat-awwdkmqavitiqkcdsphwnhzhzzfb/Build/Intermediates/Re-Chat.build/Debug-iphoneos/Re-Chat.build/DerivedSources -Xcc -DDEBUG=1 -emit-module-doc-path /Users/Alec/Library/Developer/Xcode/DerivedData/Re-Chat-awwdkmqavitiqkcdsphwnhzhzzfb/Build/Intermediates/Re-Chat.build/Debug-iphoneos/Re-Chat.build/Objects-normal/arm64/ViewController~partial.swiftdoc -Onone -module-name Re_Chat -emit-module-path /Users/Alec/Library/Developer/Xcode/DerivedData/Re-Chat-awwdkmqavitiqkcdsphwnhzhzzfb/Build/Intermediates/Re-Chat.build/Debug-iphoneos/Re-Chat.build/Objects-normal/arm64/ViewController~partial.swiftmodule -serialize-diagnostics-path /Users/Alec/Library/Developer/Xcode/DerivedData/Re-Chat-awwdkmqavitiqkcdsphwnhzhzzfb/Build/Intermediates/Re-Chat.build/Debug-iphoneos/Re-Chat.build/Objects-normal/arm64/ViewController.dia -emit-dependencies-path /Users/Alec/Library/Developer/Xcode/DerivedData/Re-Chat-awwdkmqavitiqkcdsphwnhzhzzfb/Build/Intermediates/Re-Chat.build/Debug-iphoneos/Re-Chat.build/Objects-normal/arm64/ViewController.d -o /Users/Alec/Library/Developer/Xcode/DerivedData/Re-Chat-awwdkmqavitiqkcdsphwnhzhzzfb/Build/Intermediates/Re-Chat.build/Debug-iphoneos/Re-Chat.build/Objects-normal/arm64/ViewController.o 0 swift 0x0000000108145a68 llvm::sys::PrintStackTrace(__sFILE*) + 40 1 swift 0x0000000108145f54 SignalHandler(int) + 452 2 libsystem_platform.dylib 0x00007fff86631f1a _sigtramp + 26 3 libsystem_platform.dylib 0x00007fd0ac1eb010 _sigtramp + 633049360 4 swift 0x00000001075d4517 swift::Lowering::SILGenFunction::emitClosureValue(swift::SILLocation, swift::SILDeclRef, llvm::ArrayRef<swift::Substitution>, swift::AnyFunctionRef) + 1303 5 swift 0x00000001075c599e swift::Lowering::SILGenFunction::visitFuncDecl(swift::FuncDecl*) + 190 6 swift 0x000000010760987c swift::Lowering::SILGenFunction::visitBraceStmt(swift::BraceStmt*) + 380 7 swift 0x000000010760c8e8 swift::ASTVisitor<swift::Lowering::SILGenFunction, void, void, void, void, void, void>::visit(swift::Stmt*) + 152 8 swift 0x000000010760a0a5 swift::Lowering::SILGenFunction::visitIfStmt(swift::IfStmt*) + 757 9 swift 0x000000010760c8f6 swift::ASTVisitor<swift::Lowering::SILGenFunction, void, void, void, void, void, void>::visit(swift::Stmt*) + 166 10 swift 0x00000001076097e8 swift::Lowering::SILGenFunction::visitBraceStmt(swift::BraceStmt*) + 232 11 swift 0x000000010760c8e8 swift::ASTVisitor<swift::Lowering::SILGenFunction, void, void, void, void, void, void>::visit(swift::Stmt*) + 152 12 swift 0x00000001075d52dd swift::Lowering::SILGenFunction::emitClosure(swift::AbstractClosureExpr*) + 205 13 swift 0x00000001075b4234 swift::Lowering::SILGenModule::emitClosure(swift::AbstractClosureExpr*) + 196 14 swift 0x00000001075eef71 (anonymous namespace)::RValueEmitter::visitAbstractClosureExpr(swift::AbstractClosureExpr*, swift::Lowering::SGFContext) + 97 15 swift 0x00000001075e1866 swift::ASTVisitor<(anonymous namespace)::RValueEmitter, swift::Lowering::RValue, void, void, void, void, void, swift::Lowering::SGFContext>::visit(swift::Expr*, swift::Lowering::SGFContext) + 2870 16 swift 0x00000001075e24da swift::ASTVisitor<(anonymous namespace)::RValueEmitter, swift::Lowering::RValue, void, void, void, void, void, swift::Lowering::SGFContext>::visit(swift::Expr*, swift::Lowering::SGFContext) + 6058 17 swift 0x00000001075cfa0b swift::Lowering::SILGenFunction::emitExprInto(swift::Expr*, swift::Lowering::Initialization*) + 235 18 swift 0x00000001075ae824 swift::Lowering::RValueSource::materialize(swift::Lowering::SILGenFunction&) && + 196 19 swift 0x0000000107604a69 swift::Lowering::RValueSource::materialize(swift::Lowering::SILGenFunction&, swift::Lowering::AbstractionPattern, swift::SILType) && + 233 20 swift 0x00000001075f371c swift::Lowering::SILGenFunction::emitInjectOptionalValueInto(swift::SILLocation, swift::Lowering::RValueSource&&, swift::SILValue, swift::Lowering::TypeLowering const&) + 268 21 swift 0x00000001075e9b8d swift::ASTVisitor<(anonymous namespace)::RValueEmitter, swift::Lowering::RValue, void, void, void, void, void, swift::Lowering::SGFContext>::visit(swift::Expr*, swift::Lowering::SGFContext) + 36445 22 swift 0x00000001075e3e2b swift::ASTVisitor<(anonymous namespace)::RValueEmitter, swift::Lowering::RValue, void, void, void, void, void, swift::Lowering::SGFContext>::visit(swift::Expr*, swift::Lowering::SGFContext) + 12539 23 swift 0x00000001075e202b swift::ASTVisitor<(anonymous namespace)::RValueEmitter, swift::Lowering::RValue, void, void, void, void, void, swift::Lowering::SGFContext>::visit(swift::Expr*, swift::Lowering::SGFContext) + 4859 24 swift 0x00000001075cfab6 swift::Lowering::SILGenFunction::emitRValue(swift::Expr*, swift::Lowering::SGFContext) + 22 25 swift 0x00000001075bffc4 (anonymous namespace)::ArgEmitter::emitExpanded(swift::Lowering::RValueSource&&, swift::Lowering::AbstractionPattern) + 836 26 swift 0x00000001075bf582 (anonymous namespace)::ArgEmitter::emit(swift::Lowering::RValueSource&&, swift::Lowering::AbstractionPattern) + 98 27 swift 0x00000001075b7ff8 (anonymous namespace)::CallEmission::apply(swift::Lowering::SGFContext) + 1128 28 swift 0x00000001075b751a swift::Lowering::SILGenFunction::emitApplyExpr(swift::ApplyExpr*, swift::Lowering::SGFContext) + 58 29 swift 0x00000001075e0d81 swift::ASTVisitor<(anonymous namespace)::RValueEmitter, swift::Lowering::RValue, void, void, void, void, void, swift::Lowering::SGFContext>::visit(swift::Expr*, swift::Lowering::SGFContext) + 81 30 swift 0x00000001075ea00d swift::Lowering::SILGenFunction::emitIgnoredExpr(swift::Expr*) + 237 31 swift 0x0000000107609829 swift::Lowering::SILGenFunction::visitBraceStmt(swift::BraceStmt*) + 297 32 swift 0x000000010760c8e8 swift::ASTVisitor<swift::Lowering::SILGenFunction, void, void, void, void, void, void>::visit(swift::Stmt*) + 152 33 swift 0x00000001075d4ee0 swift::Lowering::SILGenFunction::emitFunction(swift::FuncDecl*) + 256 34 swift 0x00000001075b3659 swift::Lowering::SILGenModule::emitFunction(swift::FuncDecl*) + 233 35 swift 0x00000001075cea93 swift::ASTVisitor<SILGenType, void, void, void, void, void, void>::visit(swift::Decl*) + 355 36 swift 0x00000001075cd7eb SILGenType::emitType() + 203 37 swift 0x00000001075c85ae swift::Lowering::SILGenModule::visitNominalTypeDecl(swift::NominalTypeDecl*) + 30 38 swift 0x00000001075b555b swift::Lowering::SILGenModule::emitSourceFile(swift::SourceFile*, unsigned int) + 395 39 swift 0x00000001075b581a swift::SILModule::constructSIL(swift::Module*, swift::SourceFile*, swift::Optional<unsigned int>) + 314 40 swift 0x00000001075b5968 swift::performSILGeneration(swift::SourceFile&, swift::Optional<unsigned int>) + 72 41 swift 0x000000010748be18 frontend_main(llvm::ArrayRef<char const*>, char const*, void*) + 3432 42 swift 0x000000010748996d main + 1677 43 libdyld.dylib 0x00007fff8aa4c5c9 start + 1 Stack dump: 0. Program arguments: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/swift -frontend -c -primary-file /Users/Alec/Desktop/Re-Chat/Re-Chat/Re-Chat/ViewController.swift /Users/Alec/Desktop/Re-Chat/Re-Chat/Re-Chat/AppDelegate.swift -target arm64-apple-ios8.0 -Xllvm -aarch64-use-tbi -target-cpu cyclone -target-abi darwinpcs -sdk /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS8.1.sdk -I /Users/Alec/Library/Developer/Xcode/DerivedData/Re-Chat-awwdkmqavitiqkcdsphwnhzhzzfb/Build/Products/Debug-iphoneos -F /Users/Alec/Library/Developer/Xcode/DerivedData/Re-Chat-awwdkmqavitiqkcdsphwnhzhzzfb/Build/Products/Debug-iphoneos -F /Users/Alec/Desktop/Re-Chat/Re-Chat/Re-Chat -g -import-objc-header /Users/Alec/Desktop/Re-Chat/Re-Chat/Re-Chat/Re-Chat-Bridging-Header.h -module-cache-path /Users/Alec/Library/Developer/Xcode/DerivedData/ModuleCache -Xcc -I/Users/Alec/Library/Developer/Xcode/DerivedData/Re-Chat-awwdkmqavitiqkcdsphwnhzhzzfb/Build/Intermediates/Re-Chat.build/Debug-iphoneos/Re-Chat.build/swift-overrides.hmap -Xcc -iquote -Xcc /Users/Alec/Library/Developer/Xcode/DerivedData/Re-Chat-awwdkmqavitiqkcdsphwnhzhzzfb/Build/Intermediates/Re-Chat.build/Debug-iphoneos/Re-Chat.build/Re-Chat-generated-files.hmap -Xcc -I/Users/Alec/Library/Developer/Xcode/DerivedData/Re-Chat-awwdkmqavitiqkcdsphwnhzhzzfb/Build/Intermediates/Re-Chat.build/Debug-iphoneos/Re-Chat.build/Re-Chat-own-target-headers.hmap -Xcc -I/Users/Alec/Library/Developer/Xcode/DerivedData/Re-Chat-awwdkmqavitiqkcdsphwnhzhzzfb/Build/Intermediates/Re-Chat.build/Debug-iphoneos/Re-Chat.build/Re-Chat-all-target-headers.hmap -Xcc -iquote -Xcc /Users/Alec/Library/Developer/Xcode/DerivedData/Re-Chat-awwdkmqavitiqkcdsphwnhzhzzfb/Build/Intermediates/Re-Chat.build/Debug-iphoneos/Re-Chat.build/Re-Chat-project-headers.hmap -Xcc -I/Users/Alec/Library/Developer/Xcode/DerivedData/Re-Chat-awwdkmqavitiqkcdsphwnhzhzzfb/Build/Products/Debug-iphoneos/include -Xcc -I/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include -Xcc -I/Users/Alec/Library/Developer/Xcode/DerivedData/Re-Chat-awwdkmqavitiqkcdsphwnhzhzzfb/Build/Intermediates/Re-Chat.build/Debug-iphoneos/Re-Chat.build/DerivedSources/arm64 -Xcc -I/Users/Alec/Library/Developer/Xcode/DerivedData/Re-Chat-awwdkmqavitiqkcdsphwnhzhzzfb/Build/Intermediates/Re-Chat.build/Debug-iphoneos/Re-Chat.build/DerivedSources -Xcc -DDEBUG=1 -emit-module-doc-path /Users/Alec/Library/Developer/Xcode/DerivedData/Re-Chat-awwdkmqavitiqkcdsphwnhzhzzfb/Build/Intermediates/Re-Chat.build/Debug-iphoneos/Re-Chat.build/Objects-normal/arm64/ViewController~partial.swiftdoc -Onone -module-name Re_Chat -emit-module-path /Users/Alec/Library/Developer/Xcode/DerivedData/Re-Chat-awwdkmqavitiqkcdsphwnhzhzzfb/Build/Intermediates/Re-Chat.build/Debug-iphoneos/Re-Chat.build/Objects-normal/arm64/ViewController~partial.swiftmodule -serialize-diagnostics-path /Users/Alec/Library/Developer/Xcode/DerivedData/Re-Chat-awwdkmqavitiqkcdsphwnhzhzzfb/Build/Intermediates/Re-Chat.build/Debug-iphoneos/Re-Chat.build/Objects-normal/arm64/ViewController.dia -emit-dependencies-path /Users/Alec/Library/Developer/Xcode/DerivedData/Re-Chat-awwdkmqavitiqkcdsphwnhzhzzfb/Build/Intermediates/Re-Chat.build/Debug-iphoneos/Re-Chat.build/Objects-normal/arm64/ViewController.d -o /Users/Alec/Library/Developer/Xcode/DerivedData/Re-Chat-awwdkmqavitiqkcdsphwnhzhzzfb/Build/Intermediates/Re-Chat.build/Debug-iphoneos/Re-Chat.build/Objects-normal/arm64/ViewController.o 1. While emitting SIL for 'signIn' at /Users/Alec/Desktop/Re-Chat/Re-Chat/Re-Chat/ViewController.swift:14:15 2. While silgen closureexpr SIL function @_TFFC7Re_Chat14ViewController6signInFS0_FPSs9AnyObject_T_U_FTGSQCSo6PFUser_GSQCSo7NSError__T_ for expression at [/Users/Alec/Desktop/Re-Chat/Re-Chat/Re-Chat/ViewController.swift:16:80 - line:45:9] RangeText="{ (user: PFUser!, error: NSError!) -> Void in if user != nil { // Do stuff after successful login. println("Logged In") } else { func myMethod() { var user = PFUser() user.username = username.text user.password = "" // other fields can be set just like with PFObject user.signUpInBackgroundWithBlock { (succeeded: Bool!, error: NSError!) -> Void in if error == nil { // Hooray! Let them use the app now. } else { println("Signed Up") } } } println("error") } }" 

对于任何人碰到这个…我发现这个问题是由导入一个自定义的框架,我不知道如何纠正它。 但是,简单地从框架中删除导入和任何代码引用项目可以解决问题。

(□°□°)╯(┻━┻

希望这可以节省一个人几个小时追查哪一行是造成这个问题。

当编译器对你的代码中发生的事情感到困惑时,你可以得到这个错误。 我注意到你有一些嵌套在函数中的函数。 您可能会尝试一次性发表一些评论,看看错误是否消失。 这样你就可以在问题区域内找零。 您不能使用断点,因为这是编译时错误,而不是运行时错误。

我最近遇到了同样的问题,我会尽量概括我是如何解决这个问题的,因为很多这样的答案对于每个人来说都是很有帮助的。

1.首先查看错误信息的底部,以确定导致分段错误的文件和function。

错误信息

然后我看着这个function,并把它全部注释掉了。 我编译,现在工作。 然后,我一次删除了函数部分的注释,直到find导致错误的行。 在此之后,我能够修复它,而且一切正常。 🙂

对我来说,这是由Swift 2.0中Parse SDK语法的改变引起的。 如果您正在使用Parse并升级到Swift 2.0,则会更改以下语法:

Swift 1.2:

 myPFQuery.findObjectsInBackgroundWithBlock({ (queryResults: [AnyObject]?, error: NSError?) -> Void in // CODE }) 

Swift 2.0:

 myPFQuery.findObjectsInBackgroundWithBlock { (queryResults: [PFObject]?, error: NSError?) -> Void in // CODE } 

第一个'('和'last')的去除是造成最大问题的原因。 带我AGESfind这个!

当我从Swift转换到Swift 2.0时,它清楚地指出了一个特定的文件(blahClass.swift)有问题,然后列出了错误消息文本中的所有警告和错误。 我经历了手动解决这些问题,现在应用程序编译好了。

 object.doubleValue = dict["doublevalue"] as! Int 

我回滚了每一步后,我发现原因….强制转型为一个双variables的Int

对我来说这是由我的一些代码造成的。 XCode中详细的编译器输出实际上是针对它崩溃的方法。

然后,我将该方法中的所有代码注释掉,使其返回nil,然后进行编译。 然后,我使用不同的简单的代码重新实现了这个方法,并且工作。

我向苹果提交了一个错误报告。 这是XCode 7 / Swift 2.0中导致崩溃的代码 – 无可厚非的疯狂代码。

  func numberAndTitleFromDirectoryName(dirName: String) -> (Int, String)? { let components = dirName.characters.split(maxSplit: 1, allowEmptySlices: false) { $0 == " " }.map { String($0) }.map { String($0) } if let number = components.first?.toInt() { if let title = components.last { return (number, title) } } return nil; } 

我想我有点过度兴奋,使用地图function那里…新版本是更简单,也更人性化的理解。 编译器不应该崩溃。 最糟糕的是,它应该显示一些错误。 该代码在Swift 1.x中工作

我打这个错误。 经过一番沮丧,我试着Xcode干净,一切都开始工作了。 只是把这里留下来供将来参考。

我有类似的问题与Xcode 7.3和iOS 9.3。 Command failed due to signal: Segmentation fault: 11

截图

Clean(cmd + shift + k)代码,删除派生数据和退出Xcode等基本步骤不起作用。

我的代码中有一些罪魁祸首。

这是[txtUserName.text.characters.count = 0]

在你的情况审查你的代码,并修复罪魁祸首。

其中一种情况是,你已经命名了gettervariables的数据types,就像它的名字一样。 例如:

 var someInstance: someInstance {... 

更新#1。 注意_a不是Int的variables,而忘记指向正确的返回types。 问题发生在中缀运算符的两个以上操作数上。

 function getInt(value: Int) -> Int { return _a? ?? _b?.count ?? 0 } 

任何崩溃都是一个编译器错误(无论你的代码是否有效)。 尝试最新的testing版,如果它仍然崩溃,请在bugs.swift.org上提交错误报告。 Swift团队对此非常敏感。

我通过以下方式摆脱了这个错误。

我在“链接二进制库”中添加了许多框架,并使用桥接头。

我重新添加了所有的框架,并重新添加了桥接头。 这解决了我的问题。

如果使用git,很容易修复。

1)在docker:

 git stash 

2) Seg故障消失。

3)运行应用程序。

4)在docker:

 git stash pop 

5) Xcode现在告诉你真正的问题。

我在我的代码中有这条线

 weakSelf?.notifications = weakSelf?.notifications ?? [] + weakSelf?.chatNotificationDataSource ?? [] 

这导致分段错误。 但后来我改变了这种方式:

 weakSelf?.notifications = (weakSelf?.notifications ?? []) + (weakSelf?.chatNotificationDataSource ?? []) 

和应用程序开始工作。

当我尝试构build发布scheme时,我使用了代码11。 它指出了一个viewcontroller类(swift)里面有这段代码:

  required init(coder aDecoder: NSCoder) { super.init(coder: aDecoder) stuff... } 

问题是,当我添加了超类时,我忘了也实现了init。 所以,super.init导致编译器错误分割错误:11因此,如果你有这样的问题,最好也检查任何超类。

当我导入我自己制作的框架时,我也遇到了分割错误11(是的,真的很愚蠢)。

在开发了几个月的框架并将其整合到一个混合了Obj-C和Swift的主项目中之后,导入到Obj-C是没有问题的,但是一旦我在Swift中编写了import MySwiftProject ,就import MySwiftProject了。

长话短说,问题是我创build了一些自定义的方法,使用闭包为NSNotifications提供了典型,例如:

 func post(a : Int, b : String) { NSNotificationCenter.defaultCenter().postNotification("notification", object: nil, userInfo: ["a" : a, "b" : b]) } func observe(block : (a : Int, b : String) -> ()) -> NSObjectProtocol { return NSNotificationCenter.defaultCenter().addObserverForName("notification", object: nil, queue: nil) { (n : NSNotification!) -> () in // Unwrap the notification payload and provide types if let a = n.userInfo?["a"] as? Int, let b = n.userInfo?["b"] as? String { block(a, b) } } } 

(实际上,上面的代码是用模板做的,但这是另外一个故事)

主要的罪魁祸首? 这个:

 func ... -> NSObjectProtocol 

显然,Apple可以在NSNotification的方法声明中使用NSObjectProtocol ,但是当我这样做的时候,它引入了一个Segfault 11 。 将NSObjectProtocolreplace为AnyObject解决了崩溃问题。

不幸的是,这可能无法解决你的问题,因为segfault 11只是编译器的一个通用崩溃,但你可以采取措施来解决它。 我花了大约2个小时,但这是我做的:

  1. 创build一个新的项目,复制你有的结构。 就我而言,我创build了一个视图控制器swift项目,并添加了一个swift框架作为另一个项目。
  2. 将所有原始代码从一个复制到另一个。
  3. 进入编译阶段,开始移除要编译的文件,尝试禁用非常快速的代码段(如我的NSNotification典型代码)。
  4. 每次您进行更改时,请执行清理( + K ),构build( + B )并修复所有错误。
  5. 从3重复,直到分段故障消失。

就我而言,原因是在扩展中有另一个类中声明的类。

 extension classOrig { class classChild { class classGrandChild { static let aVariable : String = "SomeValue"; } } } 

这在我身边产生了错误。 我在我的项目中有几个框架,但它没有发生过。

我也为此苦苦了一阵子。 我使用Xcode 7.2将代码升级到了Swift 2,对于我来说问题是这样的:

 self.mainScrollView.documentView!.subviews.reverse() as! [MainSubView] 

我必须改变:

 (self.mainScrollView.documentView!.subviews as! [MainSubView]).reverse() 

当我重写一个子类中的一个属性时,我得到了这个错误,我没有完全重复该属性的声明。

基类:

var foo: String! {return nil}

子类:

override var foo: String {return "bar"} // missing the implicit unwrap operator

对我来说是因为我有两个同名的包。

仔细阅读debugging信息。

在我的情况下,我遇到了这个错误,因为我在if语句中错误地使用了单个'='而不是double'='。

 if aString.characters.count = 2 {...} 

我也碰到这个问题….显然,这是一个普遍的错误或sorting…当xcode弄糊涂….在我的情况下,我有3个variables,我分配值从一个数组.. ..但我没有指定数组的每个元素的数据types….一旦我做了,它解决了这个问题….

在我的情况下,我已经在我的一个ViewControllers子类中声明了以下属性:

 @property NSString * title 

我认为这与ViewController已经存在的title属性是冲突的。 我将这个属性重命名为其他东西,并重构了它的使用,错误消失了。

在我的情况下,这是由于试图使用一个返回一个NSNumber作为一个参数的Double函数所期望的函数。 我的build议是小心混合Objective C对象与Swift数据types。 和其他许多人所build议的一样,注释掉直到找出哪一个导致错误。 (即使您在创build时出现其他错误,您也可以忽略它们,看看是什么导致分段错误消失。)

对我来说,我阻止了主线程。

我做了什么来修复它与GCD(见下文)

 dispatch_async(dispatch_get_main_queue(), }) 

人为错误报告:

在我的情况下,罪魁祸首是在一个可变参数的地方传入一个数组 。 就是说,签名:

 // Note the variadic parameter func addSubview(subview subview: UIView, constrain: NSLayoutAttribute...) 

我通过了:

 // Compile-time error, "constrain" parameters have array brackets someUIView.addSubview(subview: someOtherView, constrain: [.Leading, .Top, .Bottom, .Trailing]) 

而不是:

 // Correct someUIView.addSubview(subview: someOtherView, constrain: .Leading, .Top, .Bottom, .Trailing) 

我使用Xcode机器人在我的Mac Mini上出现了分段错误。 seg故障只发生在testing的构build阶段,而不是在本地build立或运行。 只有在Xcode机器人在testing的构build步骤。

我正在使用macOS Sierra和Xcode 8,代码转换为Swift 2.3。

我终于find引起seg故障的线路,原因是:

 public let isIpad = UIDevice.currentDevice().userInterfaceIdiom == .Pad 

在课堂外被宣布为常数。 将其更改为在运行时检查userInterfaceIdiom可以解决问题。

希望这可以帮助别人!

这是我的seg故障的错误日志:

 0 swift 0x000000010f93d76b llvm::sys::PrintStackTrace(llvm::raw_ostream&) + 43 1 swift 0x000000010f93ca56 llvm::sys::RunSignalHandlers() + 70 2 swift 0x000000010f93ddbf SignalHandler(int) + 287 3 libsystem_platform.dylib 0x00007fffb24aabba _sigtramp + 26 4 libsystem_platform.dylib 0x00007fbbfff49ae0 _sigtramp + 1302982464 5 swift 0x000000010db79996 (anonymous namespace)::Traversal::visit(swift::Expr*) + 118 6 swift 0x000000010db7b880 (anonymous namespace)::Traversal::visitApplyExpr(swift::ApplyExpr*) + 128 7 swift 0x000000010db799eb (anonymous namespace)::Traversal::visit(swift::Expr*) + 203 8 swift 0x000000010db78f45 swift::Expr::walk(swift::ASTWalker&) + 53 9 swift 0x000000010d6d2c87 walkForProfiling(swift::AbstractFunctionDecl*, swift::ASTWalker&) + 231 10 swift 0x000000010d6d2719 swift::Lowering::SILGenProfiling::assignRegionCounters(swift::AbstractFunctionDecl*) + 553 11 swift 0x000000010d6de348 (anonymous namespace)::SILGenType::emitType() + 952 12 swift 0x000000010d6ddf1e swift::Lowering::SILGenModule::visitNominalTypeDecl(swift::NominalTypeDecl*) + 30 13 swift 0x000000010d6625eb swift::Lowering::SILGenModule::emitSourceFile(swift::SourceFile*, unsigned int) + 731 14 swift 0x000000010d663139 swift::SILModule::constructSIL(swift::ModuleDecl*, swift::SILOptions&, swift::FileUnit*, llvm::Optional<unsigned int>, bool, bool) + 793 15 swift 0x000000010d6635a3 swift::performSILGeneration(swift::FileUnit&, swift::SILOptions&, llvm::Optional<unsigned int>, bool) + 115 16 swift 0x000000010d491c18 performCompile(swift::CompilerInstance&, swift::CompilerInvocation&, llvm::ArrayRef<char const*>, int&) + 12536 17 swift 0x000000010d48dc79 frontend_main(llvm::ArrayRef<char const*>, char const*, void*) + 2777 18 swift 0x000000010d489765 main + 1957 19 libdyld.dylib 0x00007fffb229e255 start + 1 

When your development target is not supporting any UIControl

In my case i was using StackView in a project with development target 8.0 . This error can happen if your development target is not supporting any UIControl.

When you set incorrect target

In below line if you leave default target "target" instead of self then Segmentation fault 11 occurs.

 shareBtn.addTarget(self, action: #selector(ViewController.share(_:)), for: .touchUpInside) 

I also encounterd the Segmentation fault: 11 error because I was calling a method which was returning Any object and compiler got confused to understand the object type that was being used.

Casting Any object to the required type which I was using, solved my issue.

If you're using multiple versions of XCode, this error can easily happen if your paths have changed (eg. You downloaded the DMG to Desktop, extracted, but then moved XCode to Applications afterward). Carefully read the Segmentation Fault 11 error given to you in XCode, it may reference your old path which is the cause of the Segmentation Fault. If it does, you can fix it by either:

  1. xcode-select the correct path. 例如。 sudo xcode-select -s /Applications/Xcode-beta.app/Contents/Developer/ (obviously input your correct path here)
  2. When installing your second version of XCode, ensure it's being extracted to the final path (extract to Applications itself) and that 'XCode.app' doesn't already exist when you do so (rename your previous one if it exists). After it's installed, you can rename both as you like.

Another potential fix for this issue:

Upgrading from El Capitan to Sierra and 'installing extra components' when launching Xcode after this upgrade fixed it for me the first time this happened.