Me ha pasado, que quiero compilar un codigo fuente y como soy inexperto, busco como se hace y al hacer todo lo que dice el tutorial, no resulta y opto por no instalar programas que necesiten compilar.
Por eso comparto esta info que aclaro un poco mis dudas sobre este tema:
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:
Descargar el código fuente.
Descomprimir el código, generalmente está empaquetado con tar comprimido bajo gzip (*.tar.gz) o bzip2 (*.tar.bz2).
Entrar en la carpeta creada al descomprimir el código.
Ejecutar el script configure ./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).
Ejecutar el comando make, encargado de la compilación.
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.
Comando Make y Configure
Muchas veces nos hemos preguntado como funciona estos comandos ¿no? por no conocer la mecánica de este funcionamiento se nos ocurre teclear en la terminal algo así
# ./configure…
Terminal : bash: ./configure: No existe el fichero ó directorio
Y piensas: Pero si tengo todo instalado ¿por qué no funciona? intentaré con otro comando
# make
Terminal : make: *** No se especificó ningún objetivo y no se encontró ningún makefile. Alto
¿Qué pasa? a ver otro comando “make install” ¡seguro funciona!
# make install
Terminal : make: *** No hay ninguna regla para construir el objetivo `install’. Alto.
Empiezas alucinar e imaginar cosas extañas como ¡hay un complot! bla, bla bla..
Bueno pues todo esto tiene su por qué, la mayor parte de los paquetes se embarcan con un script de autoconfiguración y a estos scripts se les nombra configure [o config] se tiene un corto número de parámetros en existencia, de los que se disponen todos los scripts de configure, lo interesante de todo esto es que ocurre en términos de programa en programa. Y la característica principal de configure es tener valores especiales para la compilación que estructura configure.
Ahora bien, la opción que desees estructurar para ejecutar el script de configure creará un archivo llamado makefile y el makefile constituye la base de compilación. Si configure falla no tendremos makefile.
El Make se encarga de leer todos los makefiles que el script configure creó, estos archivos le dicen a make cuales archivos compilar y el orden que debe ser compilado, esto es muy importante, ya que podría haber cientos de archivos fuente.
Cuando Make esté trabajando, presentará cada comando que esté ejecutando y todos los parámetros asociados con el.
Aplicación
Si deseas instalar un programa y tienes que compilarlo, supongo que sabes entrar a los directorios, y para ello no debe existir problema alguno [$ cd.. ]. Cuando descargas el archivo en tar. gz u otro, lo descomprimes y entras en el directorio que descargaste a través de la terminal, ahí debe estar el script.
Antes de compilar entre como root y me dirigí a la carpeta principal que descomprimí [carpeta N], para buscar en las otras carpetas y verificar en donde está el script configure.
En ciertos casos no encuentro configure pero si makefile.
Los pasos genéricos son [#./configure, # make y # make install] no está configure lo ejecutamos con make y make install.
Con esto podemos compilar nuestros paquetes para instalarlo, cuando marca errores en compilación suelen ser claros y distintos de modo de que no debes preocuparte si pasas por alto un error, a veces entramos en pánico ya que la mayor parte de los “errores” no reflejan un problema con el propio programa sino por el propio sistema. Estos errores pueden ser producto de permisos inapropiados de los archivos o bien de archivos que no puede encontrar.
Si no tienes mucho éxito en tu compilación e instalación, te sugiero que siempre leas el README e INSTALL [INSTALACIÓN], en readme tiene la descripción del paquete y en install te dice las direcciones para instalar, en ocasiones si no lo encuentras puede que este en docs en readme.1st, a veces varía un poco, lo bonito de todo esto es que puedes ver el código fuente
Tip: Para que funcione correctamente ./configure tienes que verificar en el synaptic si tienes instalado libncurses, libncurses-dev
y build-essential. Esto también se aplica en ubuntu porque fue creado en Debian, mas detalles sobre make, ya sabes que se encuentra en el manual, de hecho existen varios tipos de make y este es el estándar.
Mis otros post sobre linux te pueden interesar:

