[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: el compilador se ha vuelto loco?



On Tue, 23 Dec 2003 15:24:24 +0100
Alberto <alberto-lumbreras@iespana.es> wrote:

> siempre he compilado los programas con gcc -c archivo.c -o archivo, y
> de hecho tengo algunos ejecutables creados de esta manera, que se
> ejecutan bien.
>
> Pero hoy he intentado compilar nuevos archivos y no solo me crea
> archivo.o en lugar de "archivo" como yo le digo, sino que no me
> ejecuta el binario:
> 
> bash: ./parte_1.o: cannot execute binary file
> 
> ¿que es lo que pasa?

La verdad es que me extraña que hayas podido ejecutar programas
compilados con esta línea que das. Si le pasas la opción "-c" al gcc le
estás diciendo que no corra el linker y lo único que hace es generar un
fichero objeto (que, de por sí, no es ejecutable). 

Si quieres poder ejecutar lo que compiles: 

  $ gcc test.c -o test

, o: 

  $ gcc -c test.c -o test.o (ésto compila únicamente) 
  $ gcc test.o -o test (ésto enlaza, generando el ejecutable que
                        quieres) 

Espero que te sirva de ayuda, 


	Miguel

-- 
------------------------------------------------------
V I S U A L   T O O L S
Miguel Garcia-Lopez
R&D Department / Departamento de I+D
C/Isla Graciosa, 1.
28034 Madrid - Spain 
Telephone: +34 91 729 48 44
Fax:       +34 91 358 52 36
miguelgl@visual-tools.com 
------------------------------------------------------



Reply to: