O comando aleatório Xcode 8 falhou devido a falha de segmentação de sinal 11

9

Eu tenho um problema estranho com o novo Xcode 8 (sem versão beta) e o swift3.

Uma vez a cada 3-4 vezes que eu compilo meu código, recebo um erro 'comando falhou devido a erro de segmentação de sinal 11'. Eu só preciso inserir uma nova linha vazia, ou algumas vezes alterar alguns espaços, ou adicionar um comentário (em todo lugar no código) e o erro desaparece e eu posso compilar novamente. Isso é realmente estranho porque eu não estou mudando nada no código! E às vezes eu posso compilar e funciona, então eu não mudo nada, eu compilo novamente e recebo o erro. Isso é muito chato!

Tenho notado que isso está acontecendo desde que instalei vários pods do 'Firebase' (Firebase, Firebase / Auth etc ...). Mas eu preciso deles.

Alguém tem alguma sugestão?

PS: Eu configurei o Enable Bitcode do meu projeto para No como muitas soluções sugeridas, mas nada. Na mensagem de erro não é indicado qualquer página rápida onde o erro pode ser, um exemplo é:

  1. Ao carregar membros para 'Class_name' em
  2. Ao desserializar 'func_name' (FuncDecl # 42)

'func_name' é este:

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])
}

Mas, como eu disse, posso inserir uma linha vazia em outro arquivo e compilar!

Obrigado

    
por Andrea.Ferrando 15.09.2016 в 10:06
fonte

6 respostas

2

Eu tenho o mesmo problema que acabei de descobrir que eu estava usando o xcode 8.1 e a cópia de trabalho do projeto estava no xcode 8.2.1, então eu só instalei o xcode 8.2.1 e o problema foi resolvido. Espero que outros possam obter ajuda através disso.

    
por Premal Khetani 08.02.2017 / 13:09
fonte
0

Ok, parece que encontrei a solução: é um problema com o Firebase e com os cocoapods, então 2 soluções:

Faça o download do Firebase e importe para o seu projeto

Eu, ao invés disso, atualizei os cocoapods para a última versão e funcionou. Firebase atualizado - agora com erro de compilação rápida

    
por Andrea.Ferrando 07.10.2016 / 13:05
fonte
0

No meu caso, houve algum problema de verificação de tipo no fundo do compilador, então o editor não deu erro na medianiz, mas na construção do projeto, eu estava recebendo erro de falha de sinalização 11:

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]"

Então eu mudei meu código de:

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

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

Para (dicionário mais descritivo):

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

            for model in newValue {
                allStores.append(StoreAPIModel(dictionary: model as [String : AnyObject]).getModel())
            }
        }
    }
    
por HAK 14.10.2016 / 08:41
fonte
0

Este é um problema complicado. O problema pode estar com uma linha de código ou sintaxe. Eu estava recebendo erro semelhante e foi devido ao uso incorreto do dicionário. Eu estava tentando incrementar o valor do elemento do dicionário.

A solução é fazer a triagem do código; um erro detalhado indica qual módulo tem problema; tente comentar parte do código até encontrar a linha que está causando o problema.

    
por Pandurang Yachwad 21.10.2016 / 20:57
fonte
0

Oi eu tive o mesmo problema com o FireBase, meu problema era que eu estava estendendo FIRStorageReference e FIRDatabaseReference e algum tempo ele compilar com sucesso algum tempo eu recebo

  O comando

falhou devido a falha de segmentação de sinal 11

então eu removi os arquivos e implementei o método de outra forma, agora tudo funciona bem.

    
por Constantin Saulenco 28.10.2016 / 22:42
fonte
0

Encontrei meu problema quando isso ocorreu. (Não cocoapods.) Eu pensei que tinha deixado o programa em um estado de trabalho, mas eu estava errado. Eu estou escrevendo um programa de linha de comando simples. O que ele faz é um pouco geral, então eu defini todas as strings que o especificam em let declarações no topo do programa para que eu pudesse algum dia usar o programa em um contexto diferente.

Como isso funcionava tão bem, achei que seria inteligente e faria o mesmo com um filtro de vários dicionários. Eu me virei:

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

para:

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

significando continuar trabalhando no let , mas nunca voltei e fiz isso. O edifício me deu o erro de falha de segmentação. Definir test como uma função corrigiu o problema.

(Por acaso, eu entendo como descartar uma função de filtragem até a notação das chaves concisas no contexto da chamada para Array.filter , e por que isso funciona, mas não entendo por que não posso atribuir a chave expressão para uma constante e usá-lo como tal.)

    
por Mitchell Model 27.01.2017 / 03:57
fonte