2012-04-24 12 views
37

Así que hoy me encontré con un problema importante. Tengo un problema que involucra mi viewcontroller en Xcode 4.3.2 como se ve en este mensaje de error:

Undefined symbols for architecture i386: "_OBJC_CLASS_$_SecondViewController", 
referenced from: objc-class-ref in Birdflix_ProViewController.o "_OBJC_CLASS_$_ThirdViewController", 
referenced from: objc-class-ref in Birdflix_ProViewController.o "_OBJC_CLASS_$_FourthViewController", 
referenced from: objc-class-ref in Birdflix_ProViewController.o "_OBJC_CLASS_$_Author", 
referenced from: objc-class-ref in Birdflix_ProViewController.o 
ld: symbol(s) not found for architecture i386 clang: error: linker command failed with exit code 1 (use -v to see invocation) 

me di cuenta de que estos errores sólo aparecen cuando programo IBActions que unen mi viewcontroller a clases adicionales. Si borro las IBActions, los errores desaparecen. Cualquier ayuda es apreciada.

Respuesta

90

encontrado por fin la respuesta. En su configuración de destino, ubique las fases de compilación y navegue para compilar las fuentes. Una vez allí solo ad el archivo .m que está recibiendo el error en la lista.

+3

Otra cosa es asegurarse de que su 'objetivo' se selecciona en lugar de 'compilar y probar' al copiar/agregar cualquier recurso –

+1

@Mobihunterz, su comentario me ayudó. Gracias. +1 – Sufian

+1

Gracias Ashan Marla, ¡por la ayuda que necesitaba! – thomax

0

Para mí el siguiente método ha funcionado.

En blanco -> Construir Fases -> Fuentes de compilación que tenía todos los archivos .m incluidos los que fueron dando cuestión.

Simplemente me eliminan los archivos .m que fueron dando cuestión.

Cuestiones relacionadas