lunes, 23 de abril de 2012

Compilar aplicaciones a partir del código fuente



A veces se encuentran aplicaciones que no proporcionan paquetes de instalación, y hay que compilar a partir del código fuente. Para ello, lo primero que debemos hacer en Ubuntu es instalar un meta-paquete llamado build-essential, usando uno de los métodos explicados en este artículo.
En general, los pasos a seguir para compilar una aplicación son los siguientes:
  1. Descargar el código fuente.
  2. Descomprimir el código, generalmente está empaquetado con tar comprimido bajo gzip (*.tar.gz) o bzip2 (*.tar.bz2).
  3. Entrar en la carpeta creada al descomprimir el código.
  4. Ejecutar el script configure (sirve para comprobar las características del sistema que afectan a la compilación, configurando la compilación según estos valores, y crear el archivo makefile).
  5. Ejecutar el comando make, encargado de la compilación.
  6. Ejecutar el comando sudo make install, que instala la aplicación en el sistema, o mejor aún, instalar el paquete checkinstall, y ejecutar sudo checkinstall. Esta aplicación crea un paquete .deb de forma que no haya que compilarlo la próxima vez, aunque no incluye la lista de dependencias.
El uso de checkinstall tiene también la ventaja de que el sistema tendrá constancia de los programas instalados de esa forma, facilitando también su desinstalación.
He aquí un ejemplo completo de ejecución de este procedimiento:
$ sudo aptitude install libpanelapplet
$ tar xvzf sensors-applet-0.5.1.tar.gz
$ cd sensors-applet-0.5.1
$ ./configure --prefix=/usr
$ make
$ sudo checkinstall
Archivos binarios
Los archivos con extensión .bin son archivos binarios. No contienen un conjunto de programas o librerías como los paquetes, sino que son el programa en sí mismo. Normalmente se suelen distribuir bajo este sistema programas comerciales, que pueden ser o no gratuitos, pero que normalmente no son libres.
Cuando descargamos un archivo de este tipo y lo guardamos en el sistema, no tendrá permiso para ejecutarse.
Lo primero que debemos hacer, por consiguiente, es dar a ese fichero el permiso para ejecutarse. Desplegamos el menú contextual del archivo y elegimos la opción Propiedades. Seleccionamos la pestaña Permisos y veremos que el archivo tiene permisos de lectura y escritura para el propietario pero no para ejecución. Activamos la casilla para dar permisos de ejecución y cerramos la ventana.
Ahora que ya hemos dado permiso al fichero para poder ejecutarlo haz doble clic. Al hacerlo te aparecerá una ventana dándote varias opciones. Elije ejecutar.
Para realizar esto mismo desde una terminal:
  • Damos permisos de ejecución al archivo:
$ sudo chmod +x <nombre_binario>.bin
  • Instalamos el archivo binario:
$ sudo ./<nombre_binario>.bin

Archivos Run
Los archivos .run son asistentes, normalmente gráficos, que ayudan a la instalación. Para ejecutarlos basta con introducir en la terminal:
$ sh ./<archivo>.run
Normalmente, en el caso de que necesite permisos de superusuario (también llamado administrador o root) pedirá la contraseña; de no ser así basta con agregar la orden sudo antes del comando, con lo cual quedaría así:
$ sudo sh ./<archivo>.run
aptitude y apt-get
Aunque podemos instalar programas de forma gráfica como hemos visto en los puntos anteriores, siempre podemos recurrir a la terminal para instalar cualquier programa.
A muchos usuarios nóveles esta opción les puede parecer un poco más complicada y algo críptica. Nada más lejos de la realidad; cuando uno se acostumbra es mucho más cómodo, fácil y rápido.
Existen dos formas de instalar programas en modo texto: con aptitude y con apt-get.
Ambos programas son muy similares, salvo en un detalle: aptitude recuerda las dependencias que se han aplicado en la instalación de un paquete. Esto significa que si se instala o actualiza una aplicación con aptitude y luego se quiere desinstalar, aptitude borrará el programa junto con todas sus dependencias (excepto si son usadas por otros paquetes). Si se instala con apt-get o con entorno gráfico Synaptic, la desinstalación borrará sólo el paquete especificado, pero no las dependencias.
Uso
Abrimos una terminal vía Aplicaciones -> Accesorios -> Terminal.
  • Instalar paquetes:
$ sudo aptitude install <paquetes>
  • Desinstalar paquetes:
$ sudo aptitude remove <paquetes>
  • Desinstalar paquetes (incluyendo archivos de configuración):
$ sudo aptitude remove --purge <paquetes>
  • Actualizar la lista de paquetes disponibles:
$ sudo aptitude update
  • Actualizar el sistema con las actualizaciones de paquetes disponibles:
$ sudo aptitude upgrade

0 comentarios:

Publicar un comentario