Article View: es.comp.os.linux.programacion
Article #215Re: Convertir fichero objeto (.o) a ejectable
From: Pascal J. Bourguignon
Date: Sun, 29 Nov 2009 00:47
Date: Sun, 29 Nov 2009 00:47
55 lines
4141 bytes
4141 bytes
Kernel <C0RR30D3K3RN3L@6M41L.C0M> writes: > Pascal J. Bourguignon escribi�: >> Kernel <C0RR30D3K3RN3L@6M41L.C0M> writes: >> >>> He instalado el XDS, que es un compilador de Modula-2. En principio >>> creo que funciona bien, ya que compilo con el comando xc y me genera >>> el fichero objeto .o, pero no se como generar el ejecutable a partir >>> de este .o >>> >>> Supongo que un fichero objeto es algo independiente del lenguaje >>> original, y que un .o es un .o venga de modula2 o de C o de lo que sea >>> �es as�? >>> >>> Si es as�, �como paso este .o a un ejecutable? >> Tienes que hacer una edici�n de enlaces, un "link edit". >> Eso se puede hacer normalmente con ld(1). >> Tienes que saber qu� librerias necesitas con los archivos objetos. >> En >> general, esos no son independiente, pero se necesita al menos una >> peque�a libreria de "run-time". Por ejemplo, en el caso de los >> programas C, hace falta /usr/lib/crt1.o, que contiene el punto de >> entrada real del programa y llama a la funci�n main. Por otros >> lenguajes, es posible que se use la misma, o otra libreria. >> Se puede usar ld directamente, pero hay que darle todas la librerias >> necesarias. Si el programa necesita las librerias de C, se puede usar >> gcc para hacer la edici�n de enlaces, pues gcc llamar� ld con ellas. >> ld -o pgm module.o run-time-lib.a ... >> gcc -o pgm module1.o ... -L/usr/lib -lbib1 -lbib2 ... >> Tambien, es posible que haya un edit�r de enlaces especifico a un >> lenguaje, o al menos un piloto que como gcc llamara ld con las >> librerias necesarias por el lenguaje. >> > > Pues entonces si que hace falta enlazar con la librer�as apropiadas, > pero como no se cuales y me parece bastante complicado hacerlo > funcionar, me parece que al final voy a optar por otra soluci�n: voy a > utilizar la versi�n de Windows del compiladoren de Modula2 en Wine, > que funciona perfectamente. > > La verdad que no entiendo porque para Windows hay el compilador de > Modula-2 tiene interfaz gr�fica, y no hay ninguna complicaci�n ni para > instalarlo ni para compilar, y en cambio para Linux es en modo texto y > una verdadera odisea para hacerlo funcionar, pero en fin, es lo que > hay. Probablemente hay en alg�n lugar un archivo leeme or readme o otra documentaci�n que explica como compilar y enlacear los programas compilados por este compilador XDS. En general productos comerciales vienen con toda la documentaci�n que hace falta, y se puede comprar soporte... -- __Pascal Bourguignon__
Technical Details
Message-ID:
<87skby40o9.fsf@galatea.local>Path:
arc1-ca.pugleaf.net!g2news1.google.com!news4.google.com!feeder1-2.proxad.net!proxad.net!feeder1-1.proxad.net!ecngs!feeder2.ecngs.de!newsfeed.freenet.de!bolzen.all.de!fu-berlin.de!uni-berlin.de!individual.net!not-for-mailReferences:
<4b0e5970$1_3@filemon1.isp.telecable.es> <87k4xd7agp.fsf@galatea.local> <4b117a6a$1_4@filemon2.isp.telecable.es>Show Full Headers
Complete Article Headers
X-Google-Thread: 646d03421f,555ac06258fe7e63
X-Google-Attributes: gid646d03421f,public,usenet
X-Google-NewGroupId: yes
X-Google-Language: SPANISH,ASCII
Path: arc1-ca.pugleaf.net!g2news1.google.com!news4.google.com!feeder1-2.proxad.net!proxad.net!feeder1-1.proxad.net!ecngs!feeder2.ecngs.de!newsfeed.freenet.de!bolzen.all.de!fu-berlin.de!uni-berlin.de!individual.net!not-for-mail
From: pjb@informatimago.com (Pascal J. Bourguignon)
Newsgroups: es.comp.os.linux.programacion
Subject: Re: Convertir fichero objeto (.o) a ejectable
Date: Sun, 29 Nov 2009 01:47:18 +0100
Organization: Informatimago
Lines: 55
Message-ID: <87skby40o9.fsf@galatea.local>
References: <4b0e5970$1_3@filemon1.isp.telecable.es> <87k4xd7agp.fsf@galatea.local> <4b117a6a$1_4@filemon2.isp.telecable.es>
Mime-Version: 1.0
Content-Type: text/plain; charset=iso-8859-1
Content-Transfer-Encoding: 8bit
X-Trace: individual.net tP9KienVdYaQqGrI8GZsMgs3Kx2kUWUPgv1/610vkszQdVc0qx
Cancel-Lock: sha1:MDFmMTlkODFiN2RkMzliZDgzODAwMjBhOWExYWVlMzc2YWU3ZGU5Yw== sha1:FCVAF8VhY3ztvbcY4rKNVHz3G+g=
Face: iVBORw0KGgoAAAANSUhEUgAAADAAAAAwAQMAAABtzGvEAAAABlBMVEUAAAD///+l2Z/dAAAA
oElEQVR4nK3OsRHCMAwF0O8YQufUNIQRGIAja9CxSA55AxZgFO4coMgYrEDDQZWPIlNAjwq9
033pbOBPtbXuB6PKNBn5gZkhGa86Z4x2wE67O+06WxGD/HCOGR0deY3f9Ijwwt7rNGNf6Oac
l/GuZTF1wFGKiYYHKSFAkjIo1b6sCYS1sVmFhhhahKQssRjRT90ITWUk6vvK3RsPGs+M1RuR
mV+hO/VvFAAAAABJRU5ErkJggg==
X-Accept-Language: fr, es, en
X-Disabled: X-No-Archive: no
User-Agent: Gnus/5.1008 (Gnus v5.10.8) Emacs/22.3 (darwin)