Instalar SWI-Prolog desde la fuente en una Raspberry Pi 5 es posible y puede garantizar que obtienes la última versión con todas las optimizaciones. Sigue estos pasos para hacerlo:
1. Actualizar el sistema
Primero, asegúrate de que el sistema operativo esté actualizado.
sudo apt update && sudo apt upgrade -y
2. Instalar dependencias necesarias
Instalar los paquetes que SWI-Prolog necesita para compilarse correctamente:
sudo apt install -y git build-essential cmake libgmp-dev libssl-dev \
zlib1g-dev libreadline-dev libffi-dev libjpeg-dev \
libtiff-dev libxext-dev libice-dev libbz2-dev \
libncurses5-dev libdb-dev uuid-dev
3. Clonar el repositorio de SWI-Prolog
Descargar el código fuente desde GitHub:
git clone https://github.com/SWI-Prolog/swipl-devel.git
cd swipl-devel
4. Compilar el código
Crear una carpeta de compilación separada y configurar la compilación:
mkdir build
cd build
cmake -DCMAKE_INSTALL_PREFIX=/usr/local ..
Luego, compila el proyecto. Esto puede llevar un tiempo dependiendo de la velocidad de tu Raspberry Pi:
make -j$(nproc)
5. Instalar SWI-Prolog
Una vez que la compilación se haya completado sin errores, instala SWI-Prolog en el sistema:
sudo make install
6. Verificar la instalación
Comprueba que SWI-Prolog esté instalado correctamente ejecutando:
swipl --version
Deberías ver la versión instalada de SWI-Prolog.
7. Agregar SWI-Prolog al PATH (opcional)
Si la instalación no se detecta automáticamente, añade /usr/local/bin
a tu PATH
:
echo 'export PATH=/usr/local/bin:$PATH' >> ~/.bashrc
source ~/.bashrc
8. Uso básico de SWI-Prolog
Puedes iniciar SWI-Prolog con:
swipl
Para salir, usa:
halt.
Correcciones
El error que mencionas indica que CMake no pudo encontrar las herramientas necesarias para compilar SWI-Prolog. Vamos a revisar los pasos correctivos necesarios para resolverlo:
1. Verificar que tienes las herramientas de compilación correctas
Aunque instalaste build-essential
, parece que faltan algunas dependencias específicas. Asegúrate de instalar:
sudo apt update
sudo apt install -y build-essential cmake ninja-build \
gcc g++ make pkg-config
-
ninja-build
: Esta herramienta puede ser necesaria ya que algunos proyectos usan Ninja en vez de Make.
-
gcc
y g++
: Son los compiladores C y C++ que faltan según los errores.
2. Eliminar la carpeta build
anterior (si existe)
Si ya creaste la carpeta build
anteriormente y dio errores, elimínala para evitar conflictos:
cd ~/swipl-devel
rm -rf build
mkdir build
cd build
3. Reconfigurar con CMake
Ahora intenta ejecutar el comando de CMake nuevamente, asegurándote de especificar Ninja como la herramienta de compilación:
cmake -G Ninja -DCMAKE_INSTALL_PREFIX=/usr/local ..
4. Compilar el código
Después de que la configuración de CMake se complete exitosamente, compila usando:
ninja
Este proceso puede demorar dependiendo del rendimiento de tu Raspberry Pi.
5. Instalar SWI-Prolog
Si la compilación fue exitosa, instala SWI-Prolog con:
sudo ninja install
6. Verificar la instalación
Comprueba que SWI-Prolog se haya instalado correctamente con:
swipl --version
Posibles problemas adicionales
-
Si sigue habiendo problemas con los compiladores, asegúrate de que estén disponibles en tu PATH:
which gcc
which g++
Si no aparecen, intenta reinstalar gcc
y g++
.