logo sinuh
 

Inicio arrow Conocimiento arrow Artículos arrow Compilación e Instalación de Aplicaciones distribuidas en Código Fuente. Ejemplo de Oregano.
Compilación e Instalación de Aplicaciones distribuidas en Código Fuente. Ejemplo de Oregano. Imprimir
Por Juan Manuel Enrique Muñido   
viernes, 03 dic 2004 19:08
En ocasiones queremos instalar software que, debido a las particularidades de su licencia sólo se puede distribuir en forma de código fuente, o bien, queremos que funcione lo más óptimamente posible en nuestro ordenador. En estos casos, hay que compilar el programa, a partir de su código fuente, es decir, partiendo del código fuente, que es el interpretable por los humanos y que generalmente está escrito en lenguaje C, C++, Java, FORTRAN, etc; para, a continuación, generar los archivos ejecutables que son los que puede interpretar el ordenador.

1. Los Compiladores.

Para ello, debemos tener instalados en nuestro sistema los compiladores de los correspondientes lenguajes. Por ejemplo, el compilador de C se llama gcc, el de C++, g++, y el de FORTRAN, g77. Excepto el último, siempre es buena idea tener instalados los de C y C++, ya que, aunque no sepamos programar en estos lenguajes, sí que nos pueden resultar útiles para compilar los programas hechos por otras personas, tal y como es el objetivo de este artículo.

Para instalar los compiladores, en sistemas tipo Debian GNU/Linux (y en Linex), como root, se escribe:

apt-get install gcc g++ g77

2. Las Bibliotecas de Desarrollo.

Además de instalar los compiladores, a menudo también se necesitan instalar otros paquetes que son necesarios para compilar los programas de mayor grado de complejidad, como son aquellos que utilizan interfaces gráficas, con ventanas y botones, para ser usados dentro de nuestros entornos de escritorios. Cada entorno de escritorio utiliza una serie bibliotecas dinámicas, que son archivos binarios que incluyen código que es susceptible de ser reutilizado por otros programas que van a funcionar dentro de ese entorno de escritorio.

Por ejemplo, si os fijais bien, en muchas aplicaciones, cuando pulsamos dentro en el menu Archivo y seleccionamos la opción, Abrir o Guardar, nos aparece un cuadro de diálogo para abrir o guardar archivos que tiene el mismo aspecto. Ello se debe a que el creador del programa en cuestión, en vez de diseñar partiendo de cero ese cuadro de diálogo, lo que hace en realidad es reutilizar el código ya existente para desempeñar esa acción de abrir o guardar un archivo. De este modo, se ahorra tiempo a la hora de desarrollar aplicaciones, y espacio en el disco duro, ya que no hace falta que todos los programas incluyan repetidamente el correspondiente código para generar el menú de apertura y guardado de archivos. Además, de este modo se consigue que muchas aplicaciones tengan exactamente el mismo menú, con el mismo aspecto, lo que ayuda a homogeneizar el aspecto de las aplicaciones y facilitar su uso.


Dependiendo de la aplicación que intentemos compilar, se necesitarán unas u otras bibliotecas de desarrollo, pero, en el caso de querer compilar aplicaciones que vayan a funcionar integradas en un entorno de escritorio, entonces siempre vamos a necesitar una conjunto muy específico de ellas.

En los sistemas Linux, son muy populares dos entornos de escritorio: GNOME y KDE. Cada uno de estos escritorios están basados en unas bibliotecas de desarrollo que son las que establecen las relaciones de aspecto y semejanza entre sus aplicaciones.

(a) Bibliotecas de Desarrollo de GNOME 2

En el caso del entorno de escritorio GNOME 2, las aplicaciones destinadas a integrarse con él, hacen uso de las bibliotecas gtk+. Si queremos desarrollar o compilar aplicaciones ya existentes que se integren con GNOME 2, debemos instalar los siguientes paquetes:

apt-get install libgtk2.0-dev libgtkmm-2.4-dev libgtkhtml3.2-dev libgtksourceview-dev libgnomeui-dev libgnomeprint2.2-dev libgnomeprintui2.2-dev libxml2-dev libglade2-dev

Cuando intentemos instalar estas bibliotecas, aparecerán un mensaje diciendo que se necesitan instalar algunos paquetes más: en este caso, aceptamos instalar lo que pida.

(b) Bibliotecas de Desarrollo de KDE 3

En el caso del entorno de escritorio KDE 3, las aplicaciones destinadas a integrarse con él, hacen uso de las bibliotecas QT. Si queremos desarrollar o compilar aplicaciones ya existentes que se integren con KDE 3, debemos instalar los siguientes paquetes:

apt-get install libqt3-dev libqt3-mt-dev kdebase-dev kdelibs4-dev

De nuevo, cuando intentemos instalar estas bibliotecas, aparecerán un mensaje diciendo que se necesitan instalar algunos paquetes más: en este caso, también aceptamos instalar lo que nos pida.

3. Ejemplo Práctico de Compilación de una Aplicación: Oregano.

En este ejemplo vamos a compilar el programa Oregano, que es una aplicación gráfica para realizar diseños y análisis de circuitos electrónicos.

(a) Visitar la WEB del proyecto.

Ante todo, debemos visitar la WEB oficial del proyecto para informarnos de lo que vamos a descargar y compilar. La WEB oficial del proyecto Oregano es:

http://arrakis.gforge.lug.fi.uba.ar/index.php

(b) Leer un poco a cerca de lo que vamos a compilar.

Una vez en la WEB, y después de echar un vistazo y leer un poco, por si acaso dan instrucciones específicas para la compilación del programa, vemos que Oregano es una aplicación que se integra con el entorno de escritorio GNOME 2. Por lo tanto necesitaremos instalar las bibliotecas de desarrollo de GNOME 2, tal y como se describió en la sección 2 (a).

Además de necesitar las bibliotecas de desarrollo de GNOME, también necesitaremos instalar unas cuantas más. En concreto, debemos hacer:

apt-get install libcairo1-dev libpixman1-dev libpopt-dev

El resto de las bibliotecas a las que se hace referencia en la página, ya las tenemos, por ser las estándar de GNOME 2.

(c) Descargar el código fuente.

Finalmente, y lo más importante, vamos a buscar el código fuente del software Oregano visitando la sección de descargas de su página. En dicha sección, hacemos click en el correspondiente enlace que contiene el archivo con el código fuente comprimido. En el momento de escribir este artículo, la versión más reciente del código fuente se encontraba almacenada en el archivo:

oregano-0.40.0.tar.bz2

Una vez descargado el código fuente en nuestro ordenador, procedemos a descomprimirlo:

tar -jxvf oregano-0.40.0.tar.bz2

Y nos introducimos en el directorio oregano-0.40.0 que se acaba de crear:

cd oregano-0.40.0

(d) Compilar e instalar el software.

En este directorio hay una serie de subdirectorios y archivos que contienen el código fuente, iconos, material adicional del programa y las instrucciones para compilar. Naturalmente, no nos interesa saber nada de todo esto, pero sí que conviene leer siempre el archivo INSTALL.txt, que viene incluido en todos los paquetes con código fuente de las aplicaciones que vayamos a compilar a partir de ahora. En el archivo INSTALL.txt explican con todo detalle lo que hay que hacer para compilar e instalar el software. A todo aquel que sea amante de la lectura, le recomiendo que lo lea por completo. También le recomiendo un diccionario de inglés.

De todos modos, para los impacientes, aquí hago un resumen de las instrucciones del archivo INSTALL.txt

En primer lugar, hay que comprobar que tenemos instaladas todas las bibliotecas de desarrollo e indicar la localización donde queremos guardar los archivos binarios de la aplicación que vamos a compilar. Para ello escribimos:

./configure --prefix=/usr/local/Oregano

La opción --prefix=/usr/local/Oregano indica que, tras compilarse la aplicación, se instalará en el directorio /usr/local/Oregano. Siempre es recomendable instalar las aplicaciones que compilemos nosotros mismos en algún subdirectorio de /usr/local, en este caso en el subdirectorio Oregano, que cuelga de /usr/local, para no mezclar sus archivos con los de nuestra distribución de Linux.

Durante esta fase, empezarán a salir mensajes de comprobación de los compiladores y bibliotecas del sistema. En caso de que nos falte algo, este proceso terminará dando un mensaje de error, y debemos leerlo detenidamente para ver que es lo que nos faltaba, y en tal caso, instalarlo. Si todo ha ido bien, pasaremos a la siguiente fase, que es la compilación en sí. Para ello escribimos:

make

En este momento es cuando se compila la aplicación (aparecerán muchos mensajes del compilador en pantalla) y, dependiendo de la velocidad de nuestro ordenador, tardará más o menos. En el caso de aplicaciones grandes, como mozilla, se puede llegar a tardar incluso horas; sin embargo, en nuestro caso, con Oregano, el proceso no tardará mucho más allá de cinco minutos. Finalizada la compilación, sólo nos queda instalar el software. Esta tarea se debe realizar como superusuario, por lo que escribimos:

su

e introducimos la contraseña del usuario root. Una vez conseguidos los privilegios de superusuario, escribimos:

make install

En este momento, los archivos binarios recien compiladitos irán a parar al directorio /usr/local/Oregano y se terminará todo.

Como toque final, ya solo queda hacer un enlace simbólico para ejecutar el programa con mayor comodidad, sin necesidad de escribir la ruta completa hasta el archivo ejecutable:

ln -sf /usr/local/Oregano/bin/oregano /usr/local/bin/oregano

Ahora, para iniciar nuestra aplicación nuevita y flamante, solo debemos escribir desde un terminal:

oregano

Y ya está.

NOTA: Si queremos que nuestro Oregano sea mucho más útil, y que además de diseñar circuitos, realice simulaciones y representaciones gráficas, es conveniente instalar el software de simulación SPICE. Para ello léase el artículo "Compilación e Instalación de SPICE en distribuciones tipo Debian GNU/Linux" en este mismo sitio WEB. Otra opción es instalar el software de simulación NgSpice, que es un proyecto de implementación libre de SPICE y que corrige algunos errores que tiene este último ya que posee un ciclo de mantenimiento más corto.

Comentario[s]
Escrito por Invitado el 2005-01-10 12:09:21
hola
Escrito por Invitado el 2005-05-20 02:10:21
8) :zzz :sigh
Comentario academico
Escrito por David Bravo el 2005-05-20 18:48:51
Estoy muy contento por la aplicacion desarrollada puede ser un buen ejemplo para lpi
Escrito por Invitado el 2005-05-20 19:23:51
:upset
Escrito por Invitado el 2005-05-20 19:24:26
:zzz esto es un rollo má emocion 
es muy interesante
Escrito por Invitado el 2005-05-26 11:56:54
Gracias estoy haciendo un trabajo de sintesis sobre Software Libre VS Sotfware Privativo . 
Y Estas paginas me son de gran ayuda.
Escrito por Invitado el 2005-07-02 16:19:18
nesesito codigo fuente de linux aver quien me puede ayudar :zzz
estaa bien
Escrito por Invitado el 2005-09-02 03:49:13
] :) un poco interesanteaunque :roll :zzz
estaa bien
Escrito por Invitado el 2005-09-02 03:49:16
] :) un poco interesanteaunque :roll :zzz
COMILACION
Escrito por Invitado el 2005-09-23 22:12:18
NECESTO EL PROGRAMA "COMPILACION DE C"

Sólo los usuarios registrados pueden escribir comentarios.
Por favor valídate o regístrate.

Powered by AkoComment 2.0!




© 2002-2005 SINUH - Comunidad GNU/Linux de Extremadura
Este portal utiliza Mambo
DHTML / JavaScript Tree by TwinHelix Designs

Para contactar con nosotros envía un correo a
info
Licencia Creative Commons
Los contenidos de este portal, salvo indicación en contra, están sujetos a una licencia de Creative Commons.

Los logotipos y marcas que aparecen son propiedad de sus respectivos dueños.

Las opiniones y declaraciones de las personas reflejadas en los foros y comentarios son propiedad y responsabilidad de sus autores, no identificando la opinión de SINUH y excluyendo de cualquier responsabilidad a esta asociación.
Ahora 849 visitantes
Advertisement