2012-03-21 11 views
6

Tengo un error en la compilación. Xcode retornoCómo ver la invocación en Xcode

Undefined symbols for architecture i386: 
    "_main", referenced from: 
     start in crt1.10.6.o 
ld: symbol(s) not found for architecture i386 
clang: error: linker command failed with exit code 1 (use -v to see invocation) 

¿Sabe cómo puedo lanzar construir con -v para ver la invocación?

+1

¿Lo descubrió? –

+2

esto ocurre muy a menudo a los desarrolladores, pero nadie responde – MichaelP

+0

posible duplicado de [¿Cómo obtener la invocación para Xcode "clang" error de tiempo de compilación?] (Http://stackoverflow.com/questions/19031963/how- to-get-invocation-for-xcode-clang-compile-time-error) – Aurelius

Respuesta

3

En Xcode, haga clic en 'Ver', 'Navegadores' y 'Mostrar el navegador de informes' y luego haga clic en la versión que falló. En la lista de los pasos de compilación, verá su 'uso -v para ver la invocación' - al hacer clic con el botón derecho en el ícono de divulgación (al lado del ícono de error).

Screenshot indicating where to click Haciendo eso, se mostrarán los detalles de la invocación del vinculador.

Por supuesto, el problema real es que está construyendo un archivo ejecutable sin incluir el archivo que contiene 'main'. Por lo general, uno se crea para usted y se incluye automáticamente, en función del objetivo. Si estás haciendo un objetivo tú mismo; necesitarás main() implementado en alguna parte.

+4

El navegador de registro generalmente es el icono de la extrema derecha en la lista de iconos de la columna del navegador (izquierda), IIRC. –

+1

Lo intenté. Solo obtuve exactamente la misma información que el compilador me dio cuando arrojó el error ... la misma información que dice '(use -v para ver la invocación)'. En otras palabras, está bastante claro que no se trata de cómo obtener la invocación. – JohnK

+1

Muchas veces me enfrento al mismo error (usuario -v para ver la invocación), pero no pude entender DONDE y CÓMO usar el "-v" para ver la invocación !!!! – HarshIT

1

Puede agregar el -v al campo "Otras banderas del enlace" en la configuración del proyecto. Si lo hace, en un proyecto de prueba que aquí se obtiene la completa invocación enlazador:

complete linker invocation

complete linker invocation

cuando se agrega -v para "Otras banderas Linker" obtendrá más información, esta es la diferencia entre añadir antes y agregar detrás

Cuestiones relacionadas