Acabo de actualizar Xcode a 11.4 y al archivar un proyecto me muestra 'Fallo de segmentación 11'
Este proyecto se archivaría con Xcode 11.3.1 pero ahora no.
¿Alguien más se encontró con el mismo problema?
Editar: 15 de abril de 2020
Apple acaba de lanzar Xcode 11.4.1
swift
xcode
segmentation-fault
Artur Marchetto
fuente
fuente
Respuestas:
Me he encontrado con el mismo problema. El archivado utiliza la configuración de creación de versiones, por lo que revisé cada configuración del compilador para determinar cuáles de las diferencias conducen a estas fallas de segmentación.
En mi caso, el problema desaparece cuando cambio la configuración Activar testabilidad a SÍ para la versión .
No, no tengo idea de cuáles son las desventajas de esto en el archivo o la versión de lanzamiento, o de hecho por qué esta configuración en particular alivia el problema, pero al final del día, tengo un proyecto que ha tomado un año para llegar a esta etapa y estoy muy interesado en llevar esto a los beta testers internos, así que lo enviaré a través de un vuelo de prueba y veré cómo me va.
Mi sensación es que este es definitivamente un error de Apple, ya que el compilador no debería ser Seg Faulting en absoluto. El hecho de que se compila bajo la configuración de Depuración le da soporte a esto. Mi proyecto es tan grande que no sé cómo reproducirlo para enviar un error, pero veré si puedo obtener alguna respuesta en los foros de Apple.
fuente
Para mí ayudó a encontrar el problema cuando configuré la configuración de compilación
SWIFT_COMPILATION_MODE
parawholemodule
. Luego, después de compilar, apareció un error más específico que condujo a la función de clase que causó el error. Luego lo volvió a cambiar como estaba.Quizás también te ayude.
En mi caso, se utilizó un operador ternario para el conjunto de parámetros de entrada init. Parece que Swift 5.2 ya no lo admite.
fuente
En mi caso tuve un error con Eureka pod
En el archivo Pods, proporcioné la última versión:
Establezca también
SWIFT_COMPILATION_MODE
establecer enwholemodule
.fuente
Me cambié
#imageLiteral(resourceName: "image_name")
aUIImage(imageLiteralResourceName: "image_name")
fuente
Al igual que otros respondedores, hubo un problema de SwiftUI enterrado en los mensajes de error aquí (usando Xcode 11.4). En mi caso, el uso de
.embedInScrollView()
estaba causando el error de compilación. Deshabilitar esas llamadas lo arregló. Como solución alternativa, puse.embedInScrollView()
en un ViewModifier, así:Luego uso ese modificador un poco como la llamada original, así:
Esto significa que aún puede incrustar en un scrollView pero los errores de Seg 11 desaparecen.
fuente
Desafortunadamente, la solución Enable Testability no funcionó para mí.
Una solución temporal (hasta que Apple solucione el problema del compilador Xcode 11.4 Swift) es cambiar el Nivel de optimización a " Sin optimización " para el lanzamiento, en el destino que falla (
SWIFT_OPTIMIZATION_LEVEL = "-Onone";
). Funciona en nuestro proyecto, que se divide en múltiples marcos. Solo hay que configurarlo-Onone
.Pero la documentación de Apple le pide que no envíe su código con esta bandera . Es para desarrollo, realiza optimizaciones mínimas y conserva toda la información de depuración.
Creo que tenemos que esperar: '(
fuente
Estaba recibiendo esta excepción, y los registros de archivo me ayudaron a comprender que estaba dentro de un archivo SwiftUI en particular. Por proceso de eliminación, resulta que me había dejado
contentInsets()
yalwaysBounceVertical()
modificadores en unaVStack
que no era parte de unaList
:La eliminación de estos modificadores permitió que el archivo de lanzamiento se completara con éxito.
fuente