**Enunciado:** Elige el programa escrito en C que prefieras y comprueba en las fuentes que exista un fichero Makefile o Configure. Deberás compilar desde las fuentes.
Realiza los pasos necesarios para compilarlo e instálalo en tu equipo en un directorio que no interfiera con tu sistema de paquetes (/opt, /usr/local, etc.)
La corrección se hará en clase y deberás ser capaz de explicar qué son todos los ficheros que se hayan instalado y realizar una desinstalación limpia.
El programa elegido es `htop`, ya que está escrito en **C**. De momento no tiene ninguno de los ficheros requeridos, pero ejecutando el script `autogen.sh` se crea el fichero configure.
## Instalación
Para obtener las fuentes ejecutamos el siguiente comando:
De momento el fichero no existe. Ejecutamos `autogen.sh`. Necesitaremos además el paquete `autoconf`:
```bash
sudo apt install autoconf
```
```bash
./autogen.sh
```
![ejecucion script autogen](autogen.png)
Podemos comprobar que se ha generado el fichero **configure**:
![ls del directorio de htop](ls-directorio.png)
Podemos ejecutar el fichero configure directamente. Sin embargo, de cara a una desinstalación más sencilla y a poder tener más localizados los ficheros instalados, vamos a cambiar la ruta que hay por defecto, al directorio `opt`. Se hace añadiendo la siguiente opción:
```bash
sudo mkdir /opt/htop
./configure --prefix=/opt/htop/
```
![salida de la ejecución de configure](configure.png)
En el caso de que se de algún error en la salida del comando, hay que instalar las **dependencias** indicadas, y repetir el paso anterior.
```bash
sudo apt install libncurses*
```
### Makefile
Para poder ejecutar `make` necesitamos el paquete `build-essential`, que contiene las utilidades esenciales para compilar un paquete en Debian.
```bash
sudo apt install build-essential
```
Para instalar el paquete ejecutamos:
```bash
sudo make install
sudo make clean
```
Para generar el fichero `.deb` es **necesario** que el paquete descargado sea con `apt source`, o la versión específica de debian.