Error del enlazador Mach-O de Apple al compilar para el dispositivo


Acabo de actualizar a xcode 4.0 y ya no puedo implementar en iPhone, recibo un error de enlazador de Apple Mach-O, aunque todavía funciona para el simulador.

    Ld /Users/yveswheeler/Library/Developer/Xcode/DerivedData/iParcel-fkeqjcjcbbhjwhdssjptkdxzzzxh/Build/Intermediates/iParcel.build/Debug-iphoneos/iParcel.build/Objects-normal/armv7/iParcel normal armv7
    cd /Users/yveswheeler/iParcel
    setenv IPHONEOS_DEPLOYMENT_TARGET 3.2
    setenv PATH "/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin:/Developer/usr/bin:/usr/bin:/bin:/usr/sbin:/sbin"
    /Developer/Platforms/iPhoneOS.platform/Developer/usr/bin/g++-4.2 -arch armv7 -isysroot /Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS4.3.sdk -L/Users/yveswheeler/Library/Developer/Xcode/DerivedData/iParcel-fkeqjcjcbbhjwhdssjptkdxzzzxh/Build/Products/Debug-iphoneos -F/Users/yveswheeler/Library/Developer/Xcode/DerivedData/iParcel-fkeqjcjcbbhjwhdssjptkdxzzzxh/Build/Products/Debug-iphoneos -filelist /Users/yveswheeler/Library/Developer/Xcode/DerivedData/iParcel-fkeqjcjcbbhjwhdssjptkdxzzzxh/Build/Intermediates/iParcel.build/Debug-iphoneos/iParcel.build/Objects-normal/armv7/iParcel.LinkFileList -dead_strip -all_load -ObjC -lxml2 -miphoneos-version-min=3.2 -framework UIKit -framework CoreGraphics -framework QuartzCore /Users/yveswheeler/Library/Developer/Xcode/DerivedData/iParcel-fkeqjcjcbbhjwhdssjptkdxzzzxh/Build/Products/Debug-iphoneos/libThree20.a /Users/yveswheeler/Library/Developer/Xcode/DerivedData/iParcel-fkeqjcjcbbhjwhdssjptkdxzzzxh/Build/Products/Debug-iphoneos/libThree20Core.a /Users/yveswheeler/Library/Developer/Xcode/DerivedData/iParcel-fkeqjcjcbbhjwhdssjptkdxzzzxh/Build/Products/Debug-iphoneos/libThree20Network.a /Users/yveswheeler/Library/Developer/Xcode/DerivedData/iParcel-fkeqjcjcbbhjwhdssjptkdxzzzxh/Build/Products/Debug-iphoneos/libThree20Style.a /Users/yveswheeler/Library/Developer/Xcode/DerivedData/iParcel-fkeqjcjcbbhjwhdssjptkdxzzzxh/Build/Products/Debug-iphoneos/libThree20UI.a /Users/yveswheeler/Library/Developer/Xcode/DerivedData/iParcel-fkeqjcjcbbhjwhdssjptkdxzzzxh/Build/Products/Debug-iphoneos/libThree20UICommon.a /Users/yveswheeler/Library/Developer/Xcode/DerivedData/iParcel-fkeqjcjcbbhjwhdssjptkdxzzzxh/Build/Products/Debug-iphoneos/libThree20UINavigator.a -framework AddressBook -lz.1.2.3 -framework Foundation -framework CFNetwork -framework MobileCoreServices -framework SystemConfiguration -framework MessageUI -framework AudioToolbox -o /Users/yveswheeler/Library/Developer/Xcode/DerivedData/iParcel-fkeqjcjcbbhjwhdssjptkdxzzzxh/Build/Intermediates/iParcel.build/Debug-iphoneos/iParcel.build/Objects-normal/armv7/iParcel

arm-apple-darwin10-g++-4.2.1: /Users/yveswheeler/Library/Developer/Xcode/DerivedData/iParcel-fkeqjcjcbbhjwhdssjptkdxzzzxh/Build/Products/Debug-iphoneos/libThree20.a: No such file or directory
arm-apple-darwin10-g++-4.2.1: /Users/yveswheeler/Library/Developer/Xcode/DerivedData/iParcel-fkeqjcjcbbhjwhdssjptkdxzzzxh/Build/Products/Debug-iphoneos/libThree20Core.a: No such file or directory
arm-apple-darwin10-g++-4.2.1: /Users/yveswheeler/Library/Developer/Xcode/DerivedData/iParcel-fkeqjcjcbbhjwhdssjptkdxzzzxh/Build/Products/Debug-iphoneos/libThree20Network.a: No such file or directory
arm-apple-darwin10-g++-4.2.1: /Users/yveswheeler/Library/Developer/Xcode/DerivedData/iParcel-fkeqjcjcbbhjwhdssjptkdxzzzxh/Build/Products/Debug-iphoneos/libThree20Style.a: No such file or directory
arm-apple-darwin10-g++-4.2.1: /Users/yveswheeler/Library/Developer/Xcode/DerivedData/iParcel-fkeqjcjcbbhjwhdssjptkdxzzzxh/Build/Products/Debug-iphoneos/libThree20UI.a: No such file or directory
arm-apple-darwin10-g++-4.2.1: /Users/yveswheeler/Library/Developer/Xcode/DerivedData/iParcel-fkeqjcjcbbhjwhdssjptkdxzzzxh/Build/Products/Debug-iphoneos/libThree20UICommon.a: No such file or directory
arm-apple-darwin10-g++-4.2.1: /Users/yveswheeler/Library/Developer/Xcode/DerivedData/iParcel-fkeqjcjcbbhjwhdssjptkdxzzzxh/Build/Products/Debug-iphoneos/libThree20UINavigator.a: No such file or directory
Command /Developer/Platforms/iPhoneOS.platform/Developer/usr/bin/g++-4.2 failed with exit code 1
Author: CodeVomit, 2011-03-16

30 answers

Aquí está la solución permanente.Generalmente sobrescribir el proyecto puede causar este prolems.Prueba este método.

-UPDATE-Clang error-Mach-O Linker error

En algún caso se muestra la ventana de registro de errores .xctest error, para solucionarlo

- > Seleccione su proyecto

- > Al lado de esto(justo antes de la pestaña General) seleccione su archivo de prueba de proyecto en el menú desplegable

- > Hay una opción (como ProjNameTests)

- > En la aplicación Host, seleccione su proyecto en el menú desplegable solo si muestra custom

HECHO!

introduzca la descripción de la imagen aquí

Antiguo método suprimido

 212
Author: Gajendra K Chauhan,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2015-02-18 11:07:14

Tuve el mismo problema y el problema fue que accidentalmente he importado a.m archivo en lugar de .h en un archivo de implementación-espero que ayude

 195
Author: Daniel,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2014-10-03 19:48:38

Me encontré con el mismo problema.

La solución (para mí) = compruebe sus frameworks.

En mi caso había añadido clases relacionadas con CoreData sin "CoreData.marco". Agregarlo resolvió la queja de MACH_O.

 72
Author: Dante Cesa,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2011-03-24 21:17:10

Abierto .archivo xcworkspace no .xcodeproj. Repito abierto .archivo xcworkspace. Todos tus errores desaparecerán.

 54
Author: mahi,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2016-10-19 19:18:29

Re: Problema como se describe en el título:

Por si alguien más se perdió lo obvio...

Me encontré con este error después de instalar una nueva versión de Xcode4 y arrastrar los archivos existentes en un nuevo proyecto. No había podido detectar que la casilla de verificación' agregar a objetivos 'se dejó sin marcar en el diálogo' Elegir opciones para agregar archivos:'. Corregir mi omisión en Targets>Build Phases>Compile Sources resolvió el problema.

 35
Author: cate,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2012-07-03 14:11:49

Menú > Producto > Limpiar, esto es lo que lo hizo funcionar. No estoy seguro de todos los demás. He añadido foto para mostrar.

introduzca la descripción de la imagen aquí

 31
Author: carlosvega.me,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2015-06-06 00:08:33

Extraño error. Para mí, acabo de limpiar y reiniciar Xcode y el problema desapareció.

 28
Author: p.pad,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2011-08-07 05:54:40

Arreglo: Configuración de compilación > Habilitar Bitcode > No introduzca la descripción de la imagen aquí

 25
Author: Sebastián Lara,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2016-07-19 22:05:00

El problema era que en XCode 4, las dependencias no asumen la configuración de arquitectura del proyecto principal, como lo hacían anteriormente en XCode 3. Tuve que revisar todas mis dependencias configurándolas para la arquitectura correcta.

 20
Author: CodeVomit,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2011-05-30 18:48:04

Ninguna de estas respuestas me ayudó. Luego intenté reinstalar Cocoapods:

pod deintegrate

pod install

Problema resuelto!

 20
Author: Johannes,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2017-07-05 18:08:36

Tuve lo mismo y logré resolverlo.

En las preferencias de xcode , la pestaña ubicación cambia el valor en ubicación de compilación a "Place build products in locations specified by targets".

 13
Author: Wolfert,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2011-03-22 13:20:46

Tuve problemas con esto durante un tiempo, y en mi caso terminó siendo la configuración de Compilación bajo Rutas de búsqueda llamadas FRAMEWORK_SEARCH_PATHS. Me ayudó que seleccionara el botón "Niveles", que parecía comparar la configuración de mi proyecto, objetivo y" Resuelto". Vi que mi configuración de destino de alguna manera anuló el valor predeterminado de "inherited(heredado)", y el valor anulado fue lo que XCode "resolvió" la configuración. Cuando eliminé la anulación, que en este caso especificó el sdk 3.2, el enlazador los errores desaparecieron as al igual que algunas advertencias que aparecieron recientemente sobre cualquier clase en la que llamé a los métodos post-4.0.

Sobre esas advertencias never Nunca las vi antes de agregar el framework MessageUI para un cambio reciente. Sospecho, pero no lo sé con certeza, que cuando agregué ese marco, XCode intentó hacer algo inteligente agregando esa anulación a mi objetivo. No lo hice explícitamente en ningún momento. Las advertencias fueron, por ejemplo, sobre el método URLByAppendingPathComponent de NSURL, que no apareció hasta sdk 4.0. Antes de agregar el framework MessageUI, nunca recibí esa advertencia. Y desde que quité la anulación, ya no las consigo.

 13
Author: tigerswim19,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2011-06-29 13:15:40

Tuve este problema y la importación de QuartzCore solucionado.

 11
Author: jmosesman,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2011-06-27 19:37:54

Cambiando "Build Active Architectures Only" a Yes en CordovaLib.xcodeproj - > Build Settings hizo el truco para mí. anteriormente, la aplicación se estaba ejecutando en el simulador, pero no en el dispositivo.

 8
Author: Whizkid747,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2012-10-04 22:37:46

Es posible que deba actualizar la configuración de compilación.

Verifique la versión de destino de iOS y las arquitecturas del procesador, ya que es posible que no tenga los SDK antiguos con XCode 4.

Es posible que vea "Falta SDK" en la configuración de compilación. Cambia eso a lo que sea aplicable.

 7
Author: Macmade,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2011-03-16 18:17:30

Tuve el mismo problema: simplemente borré accidentalmente una.archivo m, mientras .h estaba en el proyecto. El problema desapareció cuando he restaurado el .archivo m.

 7
Author: Misha Karpenko,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2011-05-12 13:02:39

Compruebe que no tiene especificada una ruta de búsqueda específica del marco. si va a la información del destino y simplemente elimina las entradas de la ruta de búsqueda del marco, debería usar los valores predeterminados para la versión de implementación especificada.

 6
Author: Grady Player,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2011-04-22 19:35:46

Solo intento crear un archivo category class y tengo este problema extraño..y finalmente....

Forma incorrecta de crear la clase de categoría que causa el problema:

New File -> Cocoa Touch -> Objective-C class, luego he modificado el nombre de los archivos a Categoría de Clase como nombre.. (es decir, OriginalClass_CategoryName.h/m a OriginalClass+CategoryName.h/m, y también modificó el contenido del archivo).

Justo aquí:

New File -> Cocoa Touch -> Objective-C category, y generará automáticamente archivos (OriginalClass+CategoryName.h/m).

¡Oh, qué estúpido soy!!

 5
Author: Kjuly,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2012-02-16 12:53:23

Si está utilizando CoreData y utiliza XCode para generar subclases NSManagedObject para sus entidades, asegúrese de generar solo una para cada entidad.

Mi problema era que generaba varias subclases de NSManagedObject para la misma entidad (y las ponía en carpetas diferentes).

Acabo de borrarlos todos y regenerar las subclases NSManagedObject.

 5
Author: Flaviu,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2012-02-22 11:33:43

Para agregar a la lista de cosas extrañas que solucionaron este problema...

Tenía algunas variables CGFloat const en un archivo de encabezado global como así

const NSInteger  globalInteger1 = 2;
const NSInteger  globalInteger2 = 3;

En el momento en que quité estos, todo estaba bien:)

 5
Author: sherlock,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2012-03-15 09:25:57

Tuve exactamente el mismo problema solo porque tenía dos mismas constantes en diferentes clases. También puede tener este problema si importa .m archivo no .h file

 5
Author: Adela,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2015-07-02 13:21:20

No estoy seguro de si está relacionado, pero al ver que estás ejecutando algunas bibliotecas three20, es posible que quieras revisar esta publicación en su sitio web: http://three20.info/article/2011-03-10-Xcode4-Support

 4
Author: Rog,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2011-03-24 21:25:20

Tuve el mismo problema, y lo resolví. En mi caso, la configuración de" arquitecturas " causó el problema. En mi archivo de proyecto, pestaña Configuración de compilación, las arquitecturas se establecieron en armv6. Lo cambié a Estándar (armv7), limpiar y construir. ¡Entonces funcionó!

 4
Author: Kim Jin,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2012-01-12 14:07:11

En mi caso el problema era tener diferentes arquitecturas especificadas bajo diferentes destinos. Estaba construyendo mi objetivo de aplicación con armv6, armv7 y cocos2d con Estándar (amrv7). Vaya a configuración de compilación y asegúrese de que sus arquitecturas estén de acuerdo con todos los destinos.

 4
Author: ChrisP,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2012-02-21 03:25:44

He resuelto este problema demasiado raro !

Ir a Destino > Construir Fases > Enlace Binario con las bibliotecas :

¡Elimina todos tus frameworks y agrégalos de nuevo !

Espero que funcione para usted !

 4
Author: Rudi,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2014-10-31 09:28:55

Para el lenguaje Swift ...

Estoy recibiendo este error " ld: file too small (length=0) .... "

En mi caso solo limpio el proyecto y luego lo reconstruyo ..

Pasos: -

1) goto Project -> Clean

2) goto Project - > Build

Espero que esto ayude..

 4
Author: Niks,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2015-05-16 12:42:07

Esto hizo un truco para mí:

Ir a

1) Productos > limpios

2) Ventanas > Proyectos

3) Seleccione su proyecto y haga clic en " Eliminar" datos derivados

4) Productos > Construir

 4
Author: Nilesh Pol,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2016-05-09 10:16:38

Una posibilidad: Activar "Dead code stripping" en la configuración de compilación de Xcode 4.

Otra posibilidad: Podría ser que cambiara a usar LLVM para algún framework que anteriormente estaba usando GCC. Volver a GCC (o LLVM GCC) puede deshacerse de esas advertencias.

 3
Author: Enchilada,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2011-04-01 12:14:30

Definí erróneamente una nueva constante con el mismo nombre que una constante existente en un archivo diferente y causó este error para mí usando xCode 4.3.1. xCode no se quejó, pero al compilador no le gusta.

 3
Author: moliveira,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2012-03-23 15:52:29

Pude corregir este error editando "Rutas de búsqueda de bibliotecas"

Surgió en primer lugar porque había movido un par de carpetas, y eso terminó dando a mi configuración de compilación dos rutas de búsqueda diferentes porque se agregan automáticamente a su configuración de compilación cuando vincula una biblioteca/marco, pero no siempre se eliminan.

Por lo tanto, si mueve una biblioteca/framework vinculada a un directorio diferente y lo vuelve a vincular, tendrá que editar manualmente la búsqueda camino.

Es posible que pueda esquivar esto eliminando la biblioteca/marco antes de moverlo, pero no lo he probado.

 3
Author: Rembrandt Q. Einstein,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2012-04-04 17:55:23