2016-09-15 2 views
9

Ich habe ein seltsames Problem mit dem neuen Xcode 8 (keine Beta-Version) und swift3.Xcode 8 zufälliger Befehl fehlgeschlagen wegen Signalsegmentierung Fehler 11

Sobald alle 3-4 mal, dass ich meinen Code kompiliere ich bekomme einen 'Befehl aufgrund von Signalsegmentierung Fehler 11' Fehler. Ich muss nur eine neue leere Zeile eingeben oder manchmal einige Leerzeichen ändern oder einen Kommentar hinzufügen (überall im Code) und der Fehler verschwindet und ich kann erneut kompilieren. Das ist wirklich seltsam, weil ich nichts im Code ändere! Und manchmal kann ich kompilieren und es funktioniert, dann ändere ich nichts, ich kompiliere neu und ich bekomme den Fehler. Das ist wirklich nervig!

Ich habe festgestellt, dass dies passiert, seit ich mehrere 'Firebase' Pods installiert habe (Firebase, Firebase/Auth etc ...). Aber ich brauche sie.

Hat jemand einen Vorschlag?

PS: Ich habe den Enable-Bitcode meines Projekts auf Nein gesetzt, so viele Lösungen vorgeschlagen, aber nichts. In der Fehlermeldung ist es keine rasche Seite angegeben, wo der Fehler sein kann, ist ein Beispiel:

  1. Während Belastungselemente für ‚Klassenname‘ bei
  2. Während Deserialisieren ‚func_name‘ (FuncDecl # 42)

‚func_name‘ ist diese:

public class func loginUser(fir_user: FIRUser) { 
    let user = SFUser() 
    user.email = fir_user.email 
    user.isLogged = true 
    try! sfRealm.write() { 
     sfRealm.add(user, update:true) 
    } 

    var userToAdd = [String:AnyObject]() 
    userToAdd["email"] = fir_user.email! as NSString 

    let ref=FIRDatabase.database().reference() 
    let usersRef = ref.child(childName) 
    usersRef.setValue([key:value]) 
} 

Aber dann, wie gesagt, ich kann nur eine leere Zeile in einer anderen Datei eingeben und es kompiliert!

Dank

+3

gut zu wissen, dass solche Art von Fehlern auf XCode8 ... bleibt :( –

+0

Wenn Sie diese Pods deinstallieren erhalten Sie immer noch die Fehlermeldung (Wenn Sie 3-4 mal kompilieren)? – Qbyte

+1

@Andrea Bitte posten Sie die Lösung Sie gefunden als eine Antwort, da Ihr Problem scheint gelöst –

Antwort

0

Ok, scheint es, dass ich die Lösung gefunden haben: es ist ein Problem mit Firebase und cocoapods, so 2 Lösungen:

herunterladen Firebase und Import in Ihr Projekt

I, Stattdessen aktualisierte Cocoapods zur letzten Version und es funktionierte. Verbesserte Firebase - Jetzt schnell kompilieren Fehler

+0

erhalten Ich bekomme diesen Fehler und ich habe noch nie Cocoapods (schlecht mich?) Verwendet, also, während Probleme mit Cocoapoden diesen Fehler verursachen können, kann es ohne Cocoapods geschehen. –

0

In meinem Fall gab es einige Probleme bei der Typprüfung tief unten im Compiler, so dass der Editor nicht Fehler in der Gosse geben, aber auf das Projekt zu bauen, war ich Signal Setzung Fehler 11 Fehler:

1. While type-checking 'GetStoreAPIRequestModel' at /Users/.../StoreAPIModel.swift:9:1 
2. While type-checking expression at [/Users/.../StoreAPIModel.swift:15:18 - line:15:31] RangeText="[Dictionary]()" 
3. While resolving type [Dictionary] at [/Users/.../StoreAPIModel.swift:15:18 - line:15:29] RangeText="[Dictionary]" 

Also änderte ich meinen Code aus:

var stores = [Dictionary]() { 
     willSet { 
      allStores.removeAll() 

      for model in newValue { 
       allStores.append(StoreAPIModel(dictionary: model as! Dictionary).getModel()) 
      } 
     } 
    } 

To (kräftigeren Wörterbuch):

var stores = [[String : Any]]() { 
     willSet { 
      allStores.removeAll() 

      for model in newValue { 
       allStores.append(StoreAPIModel(dictionary: model as [String : AnyObject]).getModel()) 
      } 
     } 
    } 
+0

Nachdem dein Build fehlgeschlagen ist, wo hast du die 1/2/3 Nachrichten gefunden, die du zeigst? –

0

Dies ist ein kniffliges Problem. Problem kann mit Codezeile oder Syntax auftreten. Ich bekam einen ähnlichen Fehler und es lag an der falschen Verwendung des Wörterbuchs. Ich habe versucht, den Wert des Wörterbuchelements zu erhöhen.

Lösung ist die Triage den Code, detaillierte Fehler bieten, welches Modul hat Problem, so versuchen, einen Teil des Codes kommentieren, bis Sie die Zeile finden, die das Problem verursacht.

0

Hallo ich hatte das gleiche Problem mit Feuerbasis, mein Problem war, dass ich erstreckt FIRStorageReference und FIRDatabaseReference und einige Zeit es einige Zeit, ich erhalte kompilieren erfolgreich

command failed due to signal segmentation fault 11

so entfernt i, dass Dateien und implementieren die Methode anderen So, jetzt funktioniert alles gut.

0

Mein Problem gefunden, als dies auftrat. (Keine Cocoapoden.) Ich dachte, ich hätte das Programm in einem funktionierenden Zustand verlassen, aber ich lag falsch. Ich schreibe ein einfaches Befehlszeilenprogramm. Was es tut, ist etwas allgemein, also habe ich alle Zeichenfolgen definiert, die es in let Anweisungen an der Spitze des Programms spezifisch machen, damit ich das Programm irgendwann in einem anderen Kontext verwenden könnte.

Da das so gut funktioniert hat, dachte ich, ich wäre clever und mache dasselbe mit einem Filter aus einer Reihe von Wörterbüchern. Ich drehte mich um:

list.filter { $0["SearchStrings"] == nil } 

in:

let test = { $0["SearchStrings"] == nil } 
// ... 
list.filter(test) 

Bedeutung auf dem let weiter zu arbeiten, aber ich ging nie zurück und tat das. Gebäude gab mir den Segmentierungsfehlerfehler. Das Problem wurde behoben, indem test als Funktion definiert wurde.

(Übrigens, ich verstehe, wie eine Filterfunktion in die knappe geschweifte Klammern Notation im Rahmen des Aufrufs an Array.filter, und warum das funktioniert, aber ich verstehe nicht, warum ich den Klammerausdruck nicht zuordnen kann zu einer Konstante und benutze es als solche.)

2

Ich habe das gleiche Problem, ich finde nur heraus, dass ich xcode 8.1 und die Arbeitskopie des Projekts war in xcode 8.2.1 war, so dass ich gerade wieder xcode 8.2.1 und installieren Problem wurde gelöst. Hoffnung andere können die Hilfe durch diese bekommen.

+0

ich versuchte auch re intall xcode 8.2.1, wenn ich nur das Projekt öffnen, das es richtig funktionierte, aber nach ein paar Minuten des Codierens fing an, diesen Fehler zu zeigen, und die ganze Code-Editor-Schriftart wird schwarz (ich meine Code Editor kann nicht erkennen/Identifizieren Sie diese Syntex). – Vats

+0

@Vats Nun, ich bin damit einverstanden, aber manchmal pc Neustart oder Xcode Neustart funktioniert für das Problem. Aber nach diesem Austausch hatte ich dieses Problem noch nicht. – Ryuk

Verwandte Themen