martes, 22 de febrero de 2022

X11-BASIC

 En la entrada anterior hablaba sobre un Basic que me recordaba a los Basic de la época del Spectrum. Pues en esta ocasión traigo otro Basic, que también pretende ser sencillo como antaño, pero con un añadido que me ha llamado mucho la atención, tiene versión para Android, con cual debería significar que podríamos crear aplicaciones en Android con este Basic. Así que lo mejor es probarlo a ver que sensaciones da.

  Voy a narrar la aventura que me supuso instalar este lenguaje, algo que debería ser sencillo se convirtió en un dolor de cabeza. Este lenguaje no está en los repósitos de Ubuntu, ni en formato Snap ni Flatpak, mas que nada por que lo único que vamos a instalar es el intérprete, ya que no posee un IDE propio.

 En la página del proyecto nos lleva a SourceForge, donde podremos descargar un paquete .deb. Si intentamos instalar este paquete nos da un problema con una dependencia, se nos pide una versión por detrás de la que está en los repósitos. No queda más remedio que compilar. Y esta palabra siempre hace que corra un sudor frío.

 Desde la misma página de SourceForge nos descargamos los archivos para compilar. Una vez descomprimido en el lugar que queramos, entramos en la carpeta creada, y volvemos a entrar en la carpeta llamada "src". Una vez dentro tenemos que abrir un terminal, y tecleamos:

./configure

 Cuando haya terminado nos toca teclear:

make

Y ahora:

sudo make install

 En este momento se que se paró la instalación por que me faltaba una dependencia, no recuerdo cual era. No supuso ningún problema instalarla con apt y volver a teclear el comando anterior.

 Como vemos nos manda un error, el primero de ellos. Como solucionar este error me llevo un rato largo buscando por internet hasta que di con la solución. Básicamente es una regla de seguridad que no permite hacer una conversión. En un terminal abrimos nano para modificar un archivo.

 sudo nano  /etc/ImageMagick-6/policy.xml

 Bajamos casi hasta el fondo del archivo de texto y en la línea que pone:

<policy domain="coder" rights="none" pattern="PS" />

cambiamos la palabra "none" por:

<policy domain="coder" rights="read|write" pattern="PS" />

Guardamos los cambios con Crtl+X e intentamos otra vez compilar.


 Un nuevo error. En este caso nos avisa que no existe una serie de carpetas. Pues nada, hay que crearlas con:

sudo mkdir /usr/local/share/icons/hicolor/scalable/apps

De nuevo a compilar. Esta vez no me dio ningún error. Ya era hora. Pero cuando en un terminal tecleaba:

xbasic --help

me salia un error en el cual me decía que no se encontraba la librería libx11basic.so. En ese momento respiré profundamente, ya que ya empezaba a perder la paciencia. El error me decía que las librerías no estaban en el directorio que pedía el interprete. En este caso, para solucionar este error hay que teclear:

export LD_LIBRARY_PATH="/usr/local/lib"

y para hacer este cambio permanente hay que teclear:

 sudo chmod 0777 /usr/local/lib

Ahora si, después de un par de horas de solucionar errores por fin tengo instalado el interprete de este lenguaje. ¿Y que tal es? Pues ni idea, no me ha dado tiempo probarlo, ni a leer la documentación. En cuanto lo pruebe hago una entrada para dar mi opinión.

2 comentarios:

  1. Un poquito muerto el blog, ¿no?

    ResponderEliminar
  2. Hola.
    Pues si, está el blog cadaver perdido. Falta de tiempo, falta de inspiración, vamos, lo típico, se empieza con muchas fuerza pero con el pasar del tiempo se va perdiendo fuelle, vas retrasando las nuevas entradas, cada vez más retrasadas, y cada vez te cuesta mas y mas escribir, hasta que casi te olvidas de que existe el blog.
    Gracias por pasarte.
    Un saludo.

    ResponderEliminar