ios - googletoolboxformac - apple mach-o linker(id) error
Apple Mach-O Linker & Ditto Error-Xcode 8 (20)
Acabo de actualizar mi Xcode a Xcode 8 y ahora estoy intentando convertir el código de mi proyecto a Swift 2.3. Pude construir un par de veces utilizando Xcode 8 sin ningún error. Ahora, surgieron los siguientes errores:
Error # 1: Error de Apple Mach-O Linker: el comando Linker falló con el código de salida 1
ld: no se encontró el archivo: /Users/Linus/Library/Developer/Xcode/DerivedData/MyApp-asdjeshhsetnfxbegcsbcipdreneewgr/Build/Intermediatsasperases/
clang: error: el comando del vinculador falló con el código de salida 1 (use -v para ver la invocación)
Ni siquiera sé qué es un archivo .o
. Sin embargo, el archivo swift de DownloadsViewController
está ahí.
Error # 2: Error Ditto: Comando / usr / cin / ditto falló con el código de salida 1
ídem: no se puede obtener una ruta real para la fuente ''/Users/Linus/Library/Developer/Xcode/DerivedData/MyApp-asdjeshhsetnfxpbenefig-pplacas/permas / actividades / las actividades de las personas de la naturaleza o las actividades que se encuentran en el lugar. MyApp-Swift.h ''
El comando / usr / bin / ditto falló con el código de salida 1
El error ditto se produce 3 veces: para MyApp.swiftdoc
, MyApp.swiftmodule
y MyApp-Swift.h
.
¡Gracias por adelantado!
ACTUALIZAR
Xcode decidió mágicamente arreglar los errores por sí mismo. Mi proyecto se está ejecutando de nuevo, sin ningún error.
No hice nada que resolviera este error.
- Salir de Xcode
- Reiniciar el sistema
- Seleccione Xcode -> Preferencias.
Esto abrirá una ventana emergente. Seleccione ''Ubicaciones''. En Ubicaciones, verá ''Datos derivados''. Haga clic en el icono de flecha justo al lado de la ruta.
Esto abrirá una carpeta que contiene ''Datos derivados'', elimínelo. - Limpiar el producto y ejecutar
Además de limpiar los datos derivados y el proyecto y reiniciar xcode, he descubierto que volver a convertir su proyecto a la sintaxis actual y volver a instalar pods si los tiene también ayuda.
Para volver a convertir su proyecto, deberá establecer la configuración de compilación swift_version en sí para que su objetivo aparezca en la lista de conversión.
Al cambiar el código de bits a "No", se resolvió este problema. Esto se encuentra en la configuración de compilación.
Asegúrese de abrir el proyecto desde el archivo .xcworkspace
lugar de .xcodeproj
El problema que encontré con XCode 8.2.1 (versión 8C1002) después de convertir el proyecto a la sintaxis Swift actual (Swift 3). Solo necesitaba reconstruirlo después de limpiarlo, y los errores desaparecieron.
Esto me sucedió después de que elimine mi aplicación mientras se estaba ejecutando.
Lo resolví limpiando el proyecto.
Producto> Limpiar o Mayús + Comando + K
Ninguna de las respuestas anteriores ha resuelto mi problema. Creo que proviene de cambios en el cocoFile podFile, de usar frameworks para no usarlos
Los marcos aún se recuerdan en Destino> Propiedades generales> Marcos vinculados. También los quité. También elimino el marco y los marcos correspondientes de otros indicadores del vinculador (guardando los indicadores heredados y objC)
Espero que pueda ayudar
No se preocupe, solo vaya a su proyecto targat y luego cree la configuración y busque el código de bits habilitado, cámbielo a SÍ a NO.
Para mi aplicación nativa de reacción, eliminé una carpeta de un proyecto de prueba en Project Navigator
y Targets
. Se solucionó mi problema.
Para mi fue un problema con reaccionar haptico nativo. Creo que fue debido a un cambio en CocoaPods, pero también debido a cambiar las ubicaciones de los archivos. Acabo de quitarlo y volver a instalarlo. Espero que esto ayude a alguien.
ACTUALIZAR
La compilación tuvo éxito cuando se ejecutó, simplemente se bloquearía. Para resolver esto, utilicé Archivo> Agregar archivos a proyecto para GoogleService-Info.plist y funcionó.
Si el procedimiento de limpieza y desactivación del código de bits no funciona, entonces es posible que la razón de los errores sea simplemente un error de sintaxis más complejo en su código.
Si está importando un marco a través de Build Phases, intente colocarlo dentro de la carpeta de su proyecto y agregarlo a Link Binary con las bibliotecas. En realidad, ya he experimentado ese problema antes, estoy muy frustrado con ese error hasta que supe que tenía que poner el marco dentro de la carpeta de mi proyecto. La esperanza ayudará
Siga los siguientes pasos:
Paso 1: Vaya a la pestaña Fase de construcción y luego solo expanda Enlace binario con la biblioteca
Paso 2: luego ve a la pestaña General y luego Expandir el marco y la biblioteca vinculados (porque Yourprojectname.framework está deshabilitado)
También compruebe si está importando un archivo de implementación "* .m" en cualquiera de sus clases, que puede causar el mismo problema.
La eliminación de la declaración de importación puede solucionar el problema
Tuve el mismo problema cuando cambié Xcode de una versión anterior 7 al nuevo XCode 8. En el nuevo Xcode (8.3.3 ahora) hay más configuraciones en el compilador.
Cuando actualiza la configuración del proyecto en un nuevo Xcode (usando Editor-> Validar configuración), esta nueva configuración se aplica y se establece en el valor predeterminado SÍ. Después de esta actualización tuve el error del enlazador!
En mi proyecto, comparé la versión anterior del archivo .pbxproj con la nueva (después de la validación de la configuración) usando la comparación de Beyond (o similar).
De esta manera puedo ver las nuevas configuraciones agregadas en la nueva versión de Xcode y establecer el nuevo valor de Configuraciones en NO. Después de esta actualización, todo estaba bien y el error del vinculador desaparecía.
Tuve el mismo problema porque había definido una clase (utilizando @interface), pero no proporcioné una implementación (utilizando @implementation) para ella. Era una clase simple, así que incluso una implementación vacía lo resolvió.
paso 1 = haciendo clic en el proyecto en el menú de navegación
paso 2 = selecciona el proyecto
paso 3 = crear configuraciones
paso 4 = buscar habilitar el código de bits si el código de bits es sí que cambiar a No
Limpia XCode con los siguientes cmds y reconstruye:
rm -rf ~/Library/Developer/Xcode/DerivedData/
killall Xcode 2> /dev/null
killall Instruments 2> /dev/null
killall ''iOS Simulator'' 2> /dev/null
killall Simulator 2> /dev/null
killall ''Simulator (Watch)'' 2> /dev/null
killall ibtoold 2> /dev/null
killall simctl 2> /dev/null
# There may be others
# Kill the service itself
sudo killall -9 com.apple.CoreSimulator.CoreSimulatorService
rm -rf ~/Library/*/CoreSimulator