Construcción de aplicaciones

Construcción de aplicaciones

Autor: Francisco Isgleas Guzman
Sitio de Red: http://www.linuxparatodos.net/

Creative Commons Reconocimiento-NoComercial-CompartirIgual 2.1

© 1999-2006 Linux Para Todos. Algunos Derechos Reservados 2007 Factor Evolución SA de CV. Usted es libre de copiar, distribuir y comunicar públicamente la obra y hacer obras derivadas bajo las condiciones siguientes: a) Debe reconocer y citar al autor original. b) No puede utilizar esta obra para fines comerciales. c) Si altera o transforma esta obra, o genera una obra derivada, sólo puede distribuir la obra generada bajo una licencia idéntica a ésta. Al reutilizar o distribuir la obra, tiene que dejar bien claro los términos de la licencia de esta obra. Alguna de estas condiciones puede no aplicarse si se obtiene el permiso del titular de los derechos de autor. Los derechos derivados de usos legítimos u otras limitaciones no se ven afectados por lo anterior. Licencia completa en castellano. La información contenida en este documento y los derivados de éste se proporcionan tal cual son y los autores no asumirán responsabilidad alguna si el usuario o lector hace mal uso de éstos.

Una de las particularidades de los sistemas GNU/Linux es la instalación y puesta en marcha de aplicaciones a partir del código fuente de estas, mediante un proceso de compilación que si bien es particular para cada sistema, permite identificar una serie de pasos “base” para la construcción de la aplicación (favor de referirse a la documentación específica de dicha aplicación). Cabe mencionar que, para la instalación de programas mediante este método, es indispensable contar con las herramientas de desarrollo necesarias para la compilación de la aplicación.

Dependiendo de la distribución y versión con la cual contemos, lo mínimo requerido será un compilador (pej. gcc, gcc-c++), herramientas de autoconfiguración (automake, make, m4), depuradores (pej. bison) así como las librerías de desarrollo requeridas para la aplicación (pej. ncurses, gtk, gtk+, kdelibs, gtk#, etc)

El primer paso es el obtener el código fuente de la aplicación deseada, regularmente en un formato tar comprimido (denominado tarball). Este tarball regularmente contiene el código fuente de la aplicación, así como las instrucciones para su compilación e instalación además de otros objetos requeridos para el funcionamiento del sistema (imágenes, ficheros de configuración, definición de rutas, etc). Hay que descomprimir dicho tarball en el directorio de fuentes de aplicaciones (regularmente /usr/src) mediante el comando:

# tar xvfz paquete-version-release.tar.gz

Esto nos da como resultado una carpeta conteniendo toda la información requerida para la construcción del paquete. Una vez leida la documentación del sistema procedemos a cambiarnos al directorio recién creado, donde configuraremos los parámetros de compilación específicos para la aplicación, como puede ser la ruta de instalación, banderas de compilación (optimización), arquitectura, etc. Por ejemplo:

# cd paquete-version-release
# ./configure --with-package=/path/to/package \
--enable-widget \
--disable-gizmo \
--with-x=29 \
--with-blah-blah-blah
CFLAGS="-O1 -g -mcpu=i686 -L/usr/unlikely/lib \
-I/usr/unlikely/include -Wl,-R/usr/unlikely/lib"

Debemos estar atentos a los distintos mensajes que arroje el proceso, ya que este nos indicará algunos fallos o advertencias durante la configuración del paquete. Procedemos ahora a la construcción (compilación) del paquete mediante al comando:

# make

Este es en si el proceso de compilación. En este paso detectaremos paquetes faltantes requeridos (dependencias) para el uso de nuestro paquete. Nuevamente estaremos atentos a la salida del procedimiento, para detectar componentes faltantes o errores y advertencias originados. Si el procedimiento finaliza de manera correcta (sin errores y atendiendo las advertencias), procedemos a la instalación:

# make install

Nota: Si planea desinstalar esta aplicación, no elimine la carpeta en la cual compiló o construyó la misma, ya que esta carpeta contiene la información de instalación del paquete y solamente tendremos que recurrir al siguiente mandato para desinstalarla.

# make uninstall


Linux Para Todos
http://www.linuxparatodos.net/portal/staticpages/index.php?page=construccion-aplicaciones