Autor Tema: 1.- Compilacion Bajo Linux (gcc)  (Leído 19133 veces)

Desconectado BuHo

  • Pro Member
  • ****
  • Mensajes: 733
    • La Estancia Azul
1.- Compilacion Bajo Linux (gcc)
« en: 14 de Abril de 2004, 01:51:38 am »
Para programar en C bajo linux necesitamos dos programas muy básicos, el compilador, gcc,  y un editor de textos cualquiera. Para compilar vamos a usar gcc, pero para editar código podeis usar lo que querais, desde vim hasta gedit. Yo uso vim normalmente aunque todavía a un nivel muy básico, ya que es complejo, pero gvim es su correspondiente gráfico y es muy sencillo, además de traer coloreado de sintaxis.

Al principio vamos a crear solo codigos *.c pero ya llegaremos a crear bibliotecas. Para que se active el coloreado de sintaxis es necesario que el editor sepa que esta trabajando con un fichero de código en C, así que mejor que abrir un fichero nuevo, crearemos el archivo antes de empezar a trabajar con el:
Código: [Seleccionar]
touch holamundo.cY despues abrimos el editor (ya os digo que yo lo hare con gvim) y el archivo en cuestion:
Código: [Seleccionar]
gvim holamundo.c
Bien, nada más abrirlo, gvim estará preparado para recibir comandos, pero no para escribir código, así que pulsaremos la tecla "Insert" del teclado o la tecla "a", y veremos como abajo aparecen las letras INSERTAR. A partir de este momento, ya podemos empezar a introducir el código. Empezaremos con el clásico "Hola Mundo" porque no necesitamos nada más complicado (de momento).  Este es el código que teneis que meter.

Código: [Seleccionar]
#include <stdio.h>

int main() {

printf("Hola Mundo\n");

return 0;
}

Despues, guardamos el fichero y abrimos la consola, vamos a compilarlo.

Como ya dije usaríamos gcc. La sintaxis básica es:
Código: [Seleccionar]
gcc archivo.cEsto, si no hay errores, generaria un archivo de salida ejecutable llamado a.out, pero como lo que queremos es que salga un ejecutable con un nombre más asequible y comprensible usaremos lo siguiente:
Código: [Seleccionar]
gcc holamundo.c -o mundoEsto genera el archivo llamado "mundo" que podemos ejecutar asi:
Código: [Seleccionar]
./mundoY que, como muchos ya sabreis, imprime en pantalla la frase "Hola Mundo" y sale. En MS-DOS muchos vereis que es bueno poner un getch() al final del código para que se quede a la espera de que pulses una tecla antes de salir, ya que si no, el programa escribe hola mundo en una consola de ms-dos y la cierra, y como se ejecuta tan rapido, apenas lo veremos. En linux no hace falta, siempre tenemos visible la salida en consola y no se cerrará a no ser que nosotros lo hagamos.

No me quiero meter en el código ya que eso ya lo iremos viendo, hoy solo quería que vieseis que es muy fácil compilar bajo linux. Eso sí, no lo intenteis con el código que puso Leandros del hola mundo modificado ya que las bibliotecas conio.h y dos.h no están disponibles en linux, o al menos yo no las tengo.

Si teneis cualquier duda, problema, sugerencia, corrección, ya sabeis, yo paso por aqui todos los dias varias veces aunque no postee demasiado.
Wake up BuHo...
Daboweb has you[/color]
Mi blog: La Estancia Azul

Desconectado jirho

  • Member
  • ***
  • Mensajes: 303
Re: 1.- Compilacion Bajo Linux (gcc)
« Respuesta #1 en: 14 de Abril de 2004, 04:36:45 pm »
...muy bueno amigo, creo que deberiamos hacer un post con las diferencias entre Linux y Windows con respecto a C...ahora estoy aprovecahndo un rato libre y no es mucho...pongo el post y Si Buho, Leandros o Halo lo ven conveniente pues lo modifican y ya...por ahora solo pongo el post...
[root@local_host jirho]#Conecting to underground zone...:superman:

http://www.hackeando.com/gifs/logomini.gif

Desconectado FatsGordon

  • Pro Member
  • ****
  • Mensajes: 815
1.- Compilacion Bajo Linux (gcc)
« Respuesta #2 en: 15 de Abril de 2004, 06:33:37 pm »
En general, y salvo excepciones, lo mismo vale para Linux que para las distintas versiones de Unix.

Yo trabajo desde hace unos años sobre un HP-UX 10.20 y para compilar los archivos en C utilizo el gcc, aunque ahora por razones laborales estamos utilizando más los .ec que los .c (los .ec tienen SQL incluído en el código), y se compilan con el esql (de Informix), que es un compilador C pero con la diferencia que en lugar de usar el gcc utiliza el cc, que es el compilador por defecto del Unix (al menos del HP-UX) y que además parsea las sentencias SQL para ver que no tengan errores...

Una compilación típica en esql sería:

esql -Aa programa.ec -o programa

donde programa es el que finalmente ejecutaremos. Como resultado intermedio se obtiene... programa.c!!!!

O sea que es lo mismo, pero no es lo mismo (diría Alejandro Sanz)...

Desconectado jirho

  • Member
  • ***
  • Mensajes: 303
1.- Compilacion Bajo Linux (gcc)
« Respuesta #3 en: 16 de Abril de 2004, 03:48:23 pm »
...si amigo, en general, para Unix y derivados es lo mismo, pero en windows la cosa cambia...bueno existe el DJGPP para windows que es el Rhide para Linux y ese si trabaja igual que en Linux...
[root@local_host jirho]#Conecting to underground zone...:superman:

http://www.hackeando.com/gifs/logomini.gif

Desconectado BuHo

  • Pro Member
  • ****
  • Mensajes: 733
    • La Estancia Azul
1.- Compilacion Bajo Linux (gcc)
« Respuesta #4 en: 16 de Abril de 2004, 05:44:43 pm »
Y si lo que quiere la gente es un entorno de desarrollo gráfigo y bonito teneis el "anjuta". Y un debugger gráfico, el "ddd".
Wake up BuHo...
Daboweb has you[/color]
Mi blog: La Estancia Azul

Desconectado jirho

  • Member
  • ***
  • Mensajes: 303
1.- Compilacion Bajo Linux (gcc)
« Respuesta #5 en: 18 de Abril de 2004, 12:31:07 am »
...pues me has cijido abajo amigo...no los he visto...
[root@local_host jirho]#Conecting to underground zone...:superman:

http://www.hackeando.com/gifs/logomini.gif

Desconectado Lector

  • Member
  • ***
  • Mensajes: 451
1.- Compilacion Bajo Linux (gcc)
« Respuesta #6 en: 18 de Mayo de 2004, 10:40:41 pm »
Citar
Si teneis cualquier duda, problema, sugerencia, corrección, ya sabeis, yo paso por aqui todos los dias varias veces aunque no postee demasiado.


Tú solito lo has dicho... yo no te obligue... que conste... :lol:  :lol:  :lol:  :lol:  :lol:  :lol:  :lol:  :lol:

Aca te va un problemita o mejor dicho un warning:

Después de dar la orden de compliar el archivo.c.:

...:8:2: warning: no newline at end of file

Después de gcc archivo.c -o archivo2
archivo2.c:7:2: warning: no newline at end of file



La traducción sería...:
advertencia:  ninguna nueva línea en el extremo del archivo

Pero... qué quiere decir, no ntendo.  :oops:  :oops:  :shock:  :wink:

Un saludo y gracias de antemano.
"...cuando las cosas salen como no las espero, la vida te hace más guerrero..."

I say no more & [LogOut].  :cool:

Desconectado BuHo

  • Pro Member
  • ****
  • Mensajes: 733
    • La Estancia Azul
1.- Compilacion Bajo Linux (gcc)
« Respuesta #7 en: 18 de Mayo de 2004, 11:05:27 pm »
Pega o mandame el código con todos los espacios y tabulaciones. Vamos, igualito. Yo nunca tuve ese error... y mira que he tenido errores!!!!

Amigo, yo me lo busque con mucho gusto  :wink:
Wake up BuHo...
Daboweb has you[/color]
Mi blog: La Estancia Azul

Desconectado Lector

  • Member
  • ***
  • Mensajes: 451
1.- Compilacion Bajo Linux (gcc)
« Respuesta #8 en: 18 de Mayo de 2004, 11:15:19 pm »
Listo, mañana (-disculpame pero antes no puedo, lo de siempre... si no estudio... me muero\matan  :oops:  :lol: -) cuelgo todos los datos. Me parece que era con el "simple" hola mundo.

Voy a poner por las dudas.:

Versión del kernel.
      "       "  gcc.
      "       "  VIM.
      "       "  KWrite.  <-- me parece que voy a usra este, esta bueno. ya veré y les cuento.
      "       " Lector <-- 1.1.1 la más basica, es como los kernel, si es con todos los números impares es que es inestable o esta a prueba.   :lol:  :lol:  :lol:  :lol:

Y algo más que me parezca relevante.

Gracias y un saludo. :wink:

P.D.: Por estos lados se dice "sarna con gusto no pica".   :lol:  :lol:  :lol:  :lol:  :wink:
"...cuando las cosas salen como no las espero, la vida te hace más guerrero..."

I say no more & [LogOut].  :cool:

Desconectado BuHo

  • Pro Member
  • ****
  • Mensajes: 733
    • La Estancia Azul
1.- Compilacion Bajo Linux (gcc)
« Respuesta #9 en: 18 de Mayo de 2004, 11:33:21 pm »
Cuales son las dudas? Saber la version actual de esos programas??? O la que uso yo???

Del vim 6.2.120 es la que uso
Gcc: 3.4.0 es la mas actual y la que uso, salio hace muy poquito

Sobre la version del kernel... saber el que tu tienes???

uname -r

Si te refieres a otra cosa aclaremelo.

Un saludo.
Wake up BuHo...
Daboweb has you[/color]
Mi blog: La Estancia Azul

 

Aviso Legal | Política de Privacidad | Política de Cookies

el contenido de la web se rige bajo licencia
Creative Commons License