Ошибка команды из-за сигнала: ошибка сегментации: 11
Я получаю ошибку ...
сбой команды из-за сигнала: ошибка сегментации: 11
... при попытке скомпилировать приложение Swift. Я использую Xcode 6.1, пытаясь построить для iPhone 5 на iOS 8.1.
Код
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")
}
}"
30 ответов
для всех, кто сталкивается с этим... Я обнаружил, что проблема была вызвана импортом пользовательского фреймворка, я понятия не имею, как его исправить. Но простое удаление импорта и любого кода, ссылающегося на элементы из фреймворка, устраняет проблему.
(╯°°□)╯︵ ┻━┻
надеюсь, это может сэкономить кому-то несколько часов, преследуя, какая линия вызывает проблему.
вы можете получить эту ошибку, когда компилятор слишком запутывается в том, что происходит в вашем коде. Я заметил, что у вас есть несколько функций, которые кажутся вложенными в функции. Вы можете попробовать комментировать некоторые из них за раз, чтобы увидеть, исчезает ли ошибка. Таким образом, вы можете сосредоточиться на проблемной области. Вы не можете использовать точки останова, потому что это ошибка времени компиляции, а не ошибку времени выполнения.
недавно я столкнулся с той же проблемой, и я попытаюсь обобщить, как я ее решил, так как многие из этих ответов являются spesific, чтобы помочь всем.
1. сначала посмотрите в нижней части сообщения об ошибке, чтобы определить файл и функцию, которая вызывает ошибку сегментации.
2. затем я смотрю на эту функцию и комментирует все это. Я собрал, и теперь это сработало. Тогда Я удалил комментарии из частей функции за раз, пока не попал в строку, ответственную за ошибку. После этого я смог это исправить,и все работает. :)
для меня, это было вызвано изменением в синтаксис SDK разбора в Swift 2.0. Если используется синтаксический анализ и выполняется обновление до 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
}
удаление первого " ("и последнего") " является причиной самой большой проблемы. Мне понадобилась целая вечность, чтобы найти это!
Я нажал эту ошибку. После некоторого разочарования я попробовал Xcode clean, и все снова начало работать. Просто оставляю это здесь на будущее.
когда я получил эту ошибку при конвертации из Swift в Swift 2.0, она явно указывает на определенный файл (blahClass.swift), у которого есть проблема, затем он изложил все предупреждения и ошибки в тексте сообщения об ошибке. Я прошел и разрешил их вручную, и теперь приложение компилируется нормально.
object.doubleValue = dict["doublevalue"] as! Int
Я нашел причину после отката назад каждого шага, который я сделал.... отливка силы в int на Double переменная
для меня это было вызвано некоторыми из моих код. Подробный вывод компилятора в XCode фактически указал метод, в котором он сбой.
затем я прокомментировал весь код в методе, заставил его вернуть ноль, и он скомпилировался. Затем я повторно реализовал метод, используя другой и гораздо более простой код, и он сработал.
Я подал сообщение об ошибке с Apple. Это-по общему признанию, несколько сумасшедший-код, который вызвал сбой в XCode 7 / Swift 2.0.
func numberAndTitleFromDirectoryName(dirName: String) -> (Int, String)? {
let components = dirName.characters.split(maxSplit: 1, allowEmptySlices: false) { == " " }.map { String() }.map { String() }
if let number = components.first?.toInt() {
if let title = components.last {
return (number, title)
}
}
return nil;
}
думаю, я немного переусердствовал, используя функцию карты... Новая версия намного проще, а также более понятна для человека. Тем не менее компилятор не должен аварийно завершать работу. В худшем случае он должен показать некоторые ошибки. Код как работает в Swift 1.x
у меня была аналогичная проблема с Xcode 7.3 и iOS 9.3.
Command failed due to signal: Segmentation fault: 11
основные шаги, такие как чистый (cmd+shift+k) код, удаление производных данных и выход из Xcode не работали.
в моем коде был какой-то преступник.
Он был [txtUserName.text.characters.count = 0]
в вашем случае просмотрите свой код и исправьте виновника.
одним из случаев является то, что вы назвали тип данных переменной getter как ее имя. Например:
var someInstance: someInstance {...
обновление #1. Держите внимание на _а переменная, которая не является Int, и вы забываете указать правильный тип возврата. Проблема возникает в более чем двух операндах оператора infix.
function getInt(value: Int) -> Int {
return _a? ?? _b?.count ?? 0
}
простое исправление при использовании git.
1) В терминала:
git stash
2) ошибка Seg исчезает.
3) выполнить приложение.
4) В терминала:
git stash pop
5) Xcode теперь говорит вам о реальной проблеме.
любой сбой является ошибкой компилятора (независимо от того, действителен ли ваш код). Попробуйте последнюю бета-версию, и если он все еще сбой файла отчета об ошибке вbugs.swift.org. Команда Swift очень отзывчива на них.
Я избавился от этой ошибки следующий.
У меня было много фреймворков, добавленных в" Link Binary With Libraries", и я также использовал заголовок моста.
Я снова добавил все фреймворки и снова добавил заголовок моста. Это решило мою проблему.
Я использую Xcode 8.3 / Swift 3
я использовал ответ @Ron B., Чтобы пройти через весь код и прокомментировать различные функции, пока я не получил успешную сборку. Оказывается, это было async trailing closures
это вызвало мою ошибку:
мои трейлинг закрытия:
let firstTask = DispatchWorkItem{
//self.doSomthing()
}
let secondTask = DispatchWorkItem{
//self.doSomthingElse()
}
//trailing closure #1
DispatchQueue.main.asyncAfter(deadline: .now() + 10){firstTask}
//trailing closure #2
DispatchQueue.main.asyncAfter(deadline: .now() + 20){secondTask}
однажды я использовал синтаксис автозаполнения на Segmentation fault: 11
был ушел
//autocomplete syntax closure #1
DispatchQueue.main.asyncAfter(deadline: .now() + 10, execute: firstTask)
//autocomplete syntax closure #2
DispatchQueue.main.asyncAfter(deadline: .now() + 20, execute: secondTask)
У меня такая же проблема, поэтому я попытался переключиться на уровень оптимизации Быстрая Оптимизация С Одним Файлом [- O] вместо Быстрая Оптимизация Всего Модуля затем он работал, строился, архив для успеха Appstore.
некоторые фреймворки, которые мы использовали, нуждаются в рефакторинге для адаптации с Быстрая Оптимизация Всего Модуля
У меня был этот код 11 при попытке построить схему выпуска. Он указал на один класс viewcontroller (swift), который имел этот кусок кода внутри:
required init(coder aDecoder: NSCoder) {
super.init(coder: aDecoder)
stuff...
}
проблема заключалась в том, что когда я добавил к нему суперкласс, я забыл также реализовать init. Так что супер.init вызвал ошибку компилятора ошибка сегментации: 11 Поэтому, если у вас есть такая проблема, неплохо проверить и любые суперклассы.
у меня также была ошибка сегментации 11, при импорте фреймворка, сделанного мной (да, чувствовал себя очень глупо).
после разработки фреймворка в течение нескольких месяцев и интеграции его в основной проект с смешанными Obj-C и Swift, импорт в Obj-C не был проблемой, но как только я написал import MySwiftProject
в Swift, весь ад вырвался на свободу.
короче говоря, проблема в том, что я создал некоторые пользовательские методы, которые обеспечивают типизации 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 может использовать NSObjectProtocol
в объявлении NSNotification
методы, но когда я это делаю, он вводит Segfault 11
. Замена NSObjectProtocol
до AnyObject
решается аварии.
к сожалению, это может не решить вашу проблему, так как segfault 11-это просто общий сбой компилятора, но вы можете предпринять шаги решить ее. Мне потребовалось около 2 часов, но это то, что я сделал:
- создайте новый проект, копируя структуру, которую вы имели. В моем случае я создал проект swift с одним контроллером представления и добавил структуру swift в качестве другого проекта.
- скопируйте весь исходный код из одного в другой.
- перейдите к фазе компиляции и начните удалять файлы для компиляции, попробуйте отключить куски кода, которые очень быстры (например, моя NSNotification типизация.)
- каждый раз, когда вы делаете изменение, сделать чистый (⌘⌥ ⇧ +K), build (⌘+B) и исправить ошибки.
- повторять от 3 до сегментации уходит.
в моем случае причиной было объявление класса в другом классе в пределах расширения.
extension classOrig {
class classChild {
class classGrandChild {
static let aVariable : String = "SomeValue";
}
}
}
Это вызвало ошибку с моей стороны. У меня было несколько фреймворков в моем проекте, но раньше этого не было.
Я также некоторое время боролся с этим. Я обновил свой код до Swift 2 с помощью Xcode 7.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
внимательно прочитайте сообщение отладки.
в моем случае я столкнулся с этой ошибкой, потому что я использовал один '=' вместо double '=' по ошибке в if-statement.
if aString.characters.count = 2 {...}
ни один из этих ответов не работал для меня, но я нашел мою проблему. Это было связано с Обработка Ошибок (в разделе отключение распространения ошибок). У меня был такой метод:
func getSlider() throws -> UISlider {
... // code that could throw an error
return UISlider()
}
ссылаясь на это так:
func anotherMethod() -> Float {
return try! getSlider().value
}
дал ошибку. Но, переключившись на это, он ушел:
func anotherMethod() -> Float {
return (try! getSlider()).value
}
Я тоже столкнулся с этой проблемой.... очевидно, это общая ошибка или рода... когда xcode запутывается.... в моем случае у меня было 3 vars, которым я присваивал значения из массива.... но я не указать тип данных в каждом элементе массива.... как только я это сделал, проблема была решена....
в моем случае я объявил следующее свойство в одном из моих подклассов ViewControllers:
@property NSString * title
Я думаю, что это противоречило уже существующим title
в собственность ViewController
. Я переименовал это свойство во что-то другое и изменил его использование, и ошибка исчезла.
в моем случае это было вызвано попыткой использовать функцию, которая возвращала NSNumber в качестве аргумента, где ожидался Double. Мой совет-будьте осторожны, смешивая объекты Objective C с типами данных Swift. И как многие другие предложили, комментируйте строки, пока вы не укажете, какая из них вызывает ошибку. (Даже если вы создаете другие ошибки при этом, вы можете просто игнорировать их и видеть, что делает ошибку ошибки сегментации уйти.)
для меня я блокировал основной поток.
что я сделал, чтобы исправить это с помощью 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)
у меня ошибка сегментации на моем Mac Mini с использованием ботов Xcode. Ошибка seg произошла только на этапе сборки тестирования, а не во время построения или локального запуска. Только в Xcode ботах на этапе сборки тестирования.
Я использую macOS Sierra и Xcode 8, с кодом, преобразованным в Swift 2.3.
Я, наконец, нашел строку, вызывающую ошибку 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
когда ваша цель разработки не поддерживает какой-либо UIControl
В моем случае я использую StackView
в проекте с целью разработки 8.0
.
Эта ошибка может произойти, если цель разработки не поддерживает UIControl.
когда вы устанавливаете неправильный элемент
в нижней строке, если вы оставите цель по умолчанию "target" вместо self, то произойдет ошибка сегментации 11.
shareBtn.addTarget(self, action: #selector(ViewController.share(_:)), for: .touchUpInside)