LIBREFOREVER.COM/BLOG

Informática, GNU/Linux, software libre, proyectos, guías, cosas que me sucedan, mis opiniones…

Como compilar programas para GNU/Linux

Publicado por ERMes en Agosto 11th 2009

Es raro que un programa no esté en el repositorio de la distribución que usemos pero, aveces, hay programas que solo suministran el código fuente y es necesario compilarlos.

Ahora voy a explicar unas pautas básicas y muy genéricas para los que no lo hallan hecho nunca y quieran hacerlo:

  1. Descomprime el archivo con código fuente

  2. Asegúrate de tener “g++” y “make” instalados. En Debian o Ubuntu puedes instalar un paquete que se llama “build-essential” para asegurarte de que estás listo para poder compilar programas.

  3. Antes de continuar te recomiendo leer la documentación que acompaña al programa, que normalmente está contenida en un archivo llamado README. Por otro lado, tambíen suele existir un archivo llamado INSTALL que explica la forma de instalar el programa. Ambos archivos suelen estar escritos en inglés e informan de las dependencias especiales que necesita el programa para poder ser compilado y la forma de instalarlo. Si encuentras estos archivos y puedes comprenderlos, es mejor que sigas sus instrucciones pues cabe la posibilidad de que el programa se instale de otra forma distinta a la genérica (descrita en esta guia).

  4. Abre una consola en la carpeta donde está el código fuente.

  5. Pon “./configure”.

    • Es posible que de error, en ese caso es porque falta por instalar alguna librería.

    • Busca en google el error, averigua cual es e instalala desde tu gestor de paquetes.

    • Normalmente el propio error te dice el nombre de la librería.

    • Cuando la hallas instalado vuelve a ejecutar “./configure” y repite esta operación hasta que no de errores.

  6. Pon en consola “make” y después de un rato tendrás tu programa compilado

    • Si aparece algún error durante este paso (cosa muy poco usual), tendrás que googlear para ver porqué es y solucionarlo.

  7. Si has logrado llegar aquí, ya puedes relajarte. Ahora solo queda instalar el programa. Para ello pon en consola “su” e introduce la contraseña de super usuario (root).
  8. Ahora puedes ejecutar “make install” para instalarlo en tu sistema y empezar a usarlo.

Espero que a alguien le sirva de algo esta guía.

Tags: , ,
Publicado en General, Linux | Sin Comentarios »

Compilar kernel para debian y derivados.

Publicado por ERMes en Mayo 8th 2009

Antes de empezar, es importante saber que existen varias formas distintas de compilar un kernel, yo voy a explicar el “método Debian” que me gusta porque el resultado de la compilación es un paquete DEB que podemos instalar y desinstalar con el gestor de paquetes.

Lo primero que hay que hacer es descargarse las fuentes del kernel desde www.kernel.org
Ahora descomprimimos el paquete en /usr/src (No es obligatorio hacerlo ahí pero si es recomendable para seguir la norma general).
Abre una consola en el directorio donde te has descargado el kernel y pon lo siguiente:

su
mv linux-2.6.x /usr/src
cd /usr/src

Para que funcione la segunda linea, tendrás que sustituir la x por el resto del nombre del archivo (me refiero al paquete comprimido que descargaste antes).

Con esto ya tenemos el paquete en /usr/src, ahora hay que descomprimirlo

  • Si te has descargado el .tar.gz ejecuta en consola: tar xvzf linux-2.6.x.tar.gz
  • Si te has descargado el .tar.bz2 ejecuta en consola: tar xvjf linux-2.6.x.tar.bz2

Ahora que ya está descomprimido vamos a reasignar los permisos de la carpeta para que puedas trabajar en ella desde tu usuario y no como root, para eso, en debían hay que escribir:

chown -R tu_nombre_de_usuario linux-2.6.x

Tendrás que reemplazar “tu_nombre_de_usuario” por el nombre de tu usuario lógicamente ;-)

Ahora cierra la consola que tenias abierta, abre otra nueva y pon:

cd /usr/src/linux-2.6.x

Ahora debemos configurarlo, esto quiere decir decidir cuales módulos deseamos que tenga (o que no tenga) una vez compilado. Existen varias formas de hacerlo y voy a comentar 3 formas:

  1. make config <– Hay que tener algo de experiencia, si no la tienes no es recomendable seguir este camino ya que hace muchas preguntas de hardware.
  2. make menuconfig <– Es muy cómodo hacer la configuración por este método porque posees un menú muy sencillo e interactivo. NOTA: Necesitas tener instalado las las librerías ncurses, en Debian se instalan poniendo en consola: aptitude install libncurses5-dev
  3. make xconfig <– Debes tener instalado y en funcionamiento el servidor X, ya que toda la configuración se hace gráficamente (haciendo uso del sistema de ventanas). NOTA: Necesitas tener instaladas las librerías QT, en Debian se instalan poniendo en consola: aptitude install libqt3-dev

Yo uso el método 3 por ser mas cómodo pero puedes usar el que prefieras.
Una vez hayas configurado el kernel a tu gusto, puedes guardar y salir del asistente. Si no sabes que hacer, guarda sin modificar nada y tendrás un kernel que te funcionará bien en la mayoría de los casos.

Ya estás listo para compilar el kernel, escribe lo siguiente en consola (tal cual está ahí) y prepárate para esperar un buen rato:

make-kpkg clean
make-kpkg –initrd kernel_image kernel_headers

Cuando termine podrás instalar los dos paquetes resultantes (image y headers).
Ejecuta en la consola lo siguiente:

cd ..
dpkg -i TU_KERNEL.deb
dpkg -i TU_KERNEL-HEADERS.deb

Por ejemplo, en mi caso fue así:

dpkg -i kernel-image-2.6.29_10.00.Custom_i386.deb
dpkg -i kernel-headers-2.6.29_10.00.Custom_i386.deb

Ya puedes reiniciar la máquina e iniciar con tu nuevo kernel.

Para escribir esta guía me he basado en otra escrita por Alejandro Garrido Mota que está publicada bajo la licencia “GNU Free Documentation License” 1.2 y bajo esa misma licencia queda esta versión resumida de la misma.
Puedes ver una copia de su guía aquí o en su pagina web.

Tags: , , ,
Publicado en Linux | Sin Comentarios »