Article View: es.comp.os.linux.programacion
Article #18648Re: Una pregunta
From: *puntero_loco
Date: Wed, 28 Jul 1999 00:00
Date: Wed, 28 Jul 1999 00:00
61 lines
3359 bytes
3359 bytes
El Mon, 26 Jul 1999 22:41:58 GMT, Cymoril sin patas <ceinalem@thegym.net> escribi�: |A Tue, 29 Jun 1999 01:33:55 +0200, *puntero_loco <jajs@retemail.es> |escribiste: | |>Cristina Amor wrote: |> Si quieres hacer |>un programa que no contenga llamadas al sistema...pues no utilices la |>librer�a est�ndar (aunque seguramente habr� cosas que puedas utilizar) |>porque las librer�as (por ejemplo, el printf) hacen llamadas al sistema |>y eso es lo que queremos evitar. |Eso es una "bobada", ya que lo que interesa de un programa es que se |pueda compilar bajo distintas arquitecturas, no que un solo ejecutable |valga para todos los S.O. y plataformas. Usar printf es lo m�s |recomendable. Hombre, no es una bobada cuando lo que preguntaba era si pod�a hacerse cross-compiling con el linux, es decir crear ejecutables m�s o menos "gen�ricios", como el del n�cleo, que vayan a funcionar es otra historia m�s complicada. Que un programa se puede compilar en diferentes arquitecturas lo sabemos todos aqu�. |>Una soluci�n para no tener que reinventar la rueda es utilizar las |>librer�as del propio nucleo de linux (por ejemplo, para poder utilizar |>printk) que no utilizan las llamadas al sistema. |Entonces pierdes la portabilidad. De todas maneras, seg�n strace, |printf hace una llamada write, y eso es tirar de n�cleo. �Pero printf no pertenece a las librer�as del n�cleo! . El n�cleo utiliza printk |>Otra cosa es el formato del ejecutable. Eso si que te impedir�a que un |>mismo programa compilado se pueda ejecutar en cualquier SO, pero hay una |>versi�n del Gcc que puede act�al como "cross-compiler", (no suele venir |>en las distribuciones), o sea, que te permite generar ejecutables para |>distintas arquitecturas. |Eso es otra cosa. De todos modos, las diferencias DOS/UNIX son lo |bastante grandes como para tener problemas (e.g. conio.h vs ncurses) |O tiras de #ifdef y #ifndef y #elif y compa��a, con compilaci�n |condificonal por un tubo, o tu dir�s. Ya, de hecho el gcc para cross-compiling te puede crear ejecutables para otras m�quinas, que ejecuten Linux o Unix. Pero ah� est� lo interesante, en que pueden compilar para M88K (por ejemplo), desde un Pc-i386 |----------------------------------------------- |Cymoril sin patas | |"I believe this is heaven to no one else but me, and I'll defend it as long as I can be left alone to linger in my own silence." | |----------------------------------------------- -- / -----------------------\ | *puntero_loco | | Debian 2.1 Slink | | Usuario Linux Registrado | | 130571 | | jajs@retemail.es | \------------------------/
Technical Details
Message-ID:
<26bmn7.op1.ln@JuAnJuX>Path:
arc1-ca.pugleaf.net!unknown!not-for-mailReferences:
<377b4741.11028810@news.mad.ttd.net> <37780663.AB0D749E@retemail.es> <37c8b987.14106475@news.mad.ttd.net>Show Full Headers
Complete Article Headers
X-Google-Language: SPANISH,ASCII X-Google-Thread: f86c8,b041316f863877bc X-Google-Attributes: gidf86c8,public From: jajs@retemail.es (*puntero_loco) Subject: Re: Una pregunta Date: 1999/07/28 Message-ID: <26bmn7.op1.ln@JuAnJuX> X-Deja-AN: 506149086 Content-Transfer-Encoding: 8bit References: <377b4741.11028810@news.mad.ttd.net> <37780663.AB0D749E@retemail.es> <37c8b987.14106475@news.mad.ttd.net> Organization: Tarifa plana para todos YA! Content-Type: text/plain; charset=iso-8859-1 User-Agent: slrn/0.9.5.3 (UNIX) Mime-Version: 1.0 Newsgroups: es.comp.os.linux.programacion