Acabei de atualizar o Xcode para 11.4 e, ao arquivar um projeto, ele mostra 'Segmentation Fault 11'
Este projeto seria arquivado no Xcode 11.3.1, mas agora não.
Mais alguém encontrou o mesmo problema?
Edição: 15 de abril de 2020
A Apple acaba de lançar o Xcode 11.4.1
swift
xcode
segmentation-fault
Artur Marchetto
fonte
fonte
Respostas:
Corri para o mesmo problema. O arquivamento usa a configuração de criação do Release, então eu analisei todas as configurações do compilador para descobrir quais das diferenças levam a essas falhas de segmentação.
No meu caso, o problema desaparece quando altero a configuração Ativar testabilidade para SIM para liberação .
Não, eu não tenho idéia de quais são as desvantagens disso na compilação de arquivo ou versão, ou mesmo por que essa configuração específica alivia o problema, mas no final do dia, tenho um projeto que levou um ano para chegar a esse estágio e estou muito interessada em levar isso para os beta testers internos, por isso vou enviá-lo através do vôo de teste e ver como vou.
Meu sentimento é que esse é definitivamente um bug da Apple, já que o compilador não deve ser um Seg Segault. O fato de ele ser compilado na configuração Debug dá suporte a isso. Meu projeto é tão grande que não sei como reproduzir isso para enviar um bug, mas vou ver se consigo obter alguma resposta nos Fóruns da Apple.
fonte
Para mim, ajudou a encontrar o problema quando defino nas configurações de compilação
SWIFT_COMPILATION_MODE
parawholemodule
. Então, após a compilação, ocorreu um erro mais específico que levou à função de classe que causou o erro. Depois mudou de volta como estava.Talvez isso ajude você também.
No meu caso, havia um operador ternário usado para o conjunto de parâmetros de entrada init. Parece que o Swift 5.2 não suporta mais isso.
fonte
No meu caso, tive um erro com o pod Eureka
No arquivo Pods, forneci a versão mais recente:
Defina também
SWIFT_COMPILATION_MODE
definido comowholemodule
.fonte
Eu mudei
#imageLiteral(resourceName: "image_name")
paraUIImage(imageLiteralResourceName: "image_name")
fonte
Como outros respondedores, houve um problema do SwiftUI oculto nas mensagens de erro aqui (usando o Xcode 11.4). No meu caso, o uso de
.embedInScrollView()
estava causando o erro de compilação. Desativar essas chamadas corrigia. Como solução alternativa, eu coloquei.embedInScrollView()
em um ViewModifier, assim:Então eu uso esse modificador um pouco como a chamada original, assim:
Isso significa que você ainda pode incorporar um scrollView, mas os erros do Seg 11 desaparecem.
fonte
Infelizmente, a solução Ativar testabilidade não funcionou para mim.
Uma solução temporária (até que a Apple corrija o problema do compilador Xcode 11.4 Swift) é transformar o Nível de otimização em " Sem otimização " para versão, no destino que falhar (
SWIFT_OPTIMIZATION_LEVEL = "-Onone";
). Ele funciona em nosso projeto, que é dividido em várias estruturas. Apenas um precisa ser definido como-Onone
.Mas a documentação da Apple pede para não enviar seu código com esse sinalizador . É para desenvolvimento, realiza otimizações mínimas e preserva todas as informações de depuração.
Acho que temos que esperar: '(
fonte
Eu estava recebendo essa exceção e os logs do arquivo morto me ajudaram a entender que ele estava dentro de um arquivo SwiftUI específico. Por processo de eliminação, verifica-se que eu havia deixado
contentInsets()
ealwaysBounceVertical()
modificadores em umVStack
que não fazia parte de umList
:A remoção desses modificadores permitiu que o archive da versão fosse concluído com êxito.
fonte