On Tue, 23 Dec 2003 15:24:24 +0100 Alberto <[EMAIL PROTECTED]> 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 [EMAIL PROTECTED] ------------------------------------------------------