sábado, 16 de agosto de 2014

¿Cómo compilo e instalo Cool Old Term para Ubuntu 10.10?


¡Mis Descamisados!

¡Mi felicidad es completa al contemplar esta orgullosa Masa de trabajadores, que día a día no hacen sino reconfortar el corazón de este hombre y este soldado!

Les he hablado ya de las bondades intrínsecas de Cool Old Term, el emulador de terminal antigua que siempre han deseado los seguidores del Movimiento.

Sabemos bien, que gracias al Justicialismo compilar Cool Old Term en Ubuntu 14.04LTS es muy fácil.
Sin embargo, en las versiones mas antiguas de Ubuntu no sucede lo mismo; el procedimiento estándar de instalación nos dará errores por carecer de las versiones más nuevas, en particular de las librerías QT5.2 y de la librería de programación de gráficos abiertos (OpenGL) libGL.so.

Esto significará que el procedimiento sesá notablemente más complejo, ¡pero hubiese quedado sólo al alcance de las oligarqúias si no fuese por el espíritu reparador de las injusticias sociales que tiene nuestro Movimiento! Por eso, señores, juro que daré todo por la Masa! En particular, os enseñaré a compilar Cool old Terminal en una plataforma antigua como lo es Ubuntu Maverick 10.10 de 64 bits, en un equipo munido de video ATI/AMD Radeon HD 4200. A su vez, esta explicación puede apegarse a otros sistemas antiguos que no dispongan de las librerías en los repositorios.


Instalación de Librerías QT5

En primer lugar habremos de descargar e instalar las librerías QT 5.2, pues tal es el requerimiento de Cool old Term. Para ello, ingresamos a la web oficial del proyecto QT5 Project. Ello nos permitirá hacernos telemáticamente con el instalador de las librerías que corresponda a nuestra arquitectura. Actualmente, se encuentra disponible la versión 5.3.x, pero esta versión ocasionará problemas. Por tal motivo - y tras evaluar varias versiones - os puedo confirmar que será efectiva la versión 5.2.1, ¡la cual escogeremos a la hora de arrrancar el instalador multiple!

Sin temor alguno haremos clic en el ícono de la arquitectura del instalador múltiple que corresponda a nuestro sistema (ya sea x86 para sistemas de 32 bits, o x64 para aquellos de 64 bits):

...esto dará inicio la descarga del paquete que instalará la versión Qt que le solicitemos y en la arquitectura que corresponda (en mi caso, descargo el paquete de 64 bits). Según la opción que elijamos, nos descargará archivo oficial qt-opensource-linux-x64-1.6.0-4-online.run o qt-opensource-linux-x32-1.6.0-4-online.run.

No bien haya finalizado la descarga, el fichero del instalador quedará en la carpeta /Descargas de nuestro Usuario. Dicho archivo será inocuo a no ser que le asignamos los necesarios permisos de ejecución y lo ejecutamos. Para ello abrimos una Terminal con Ctrl+Alt+T e ingresamos:

cd ~/Descargas/

...de manera que - asumiento que se trate de la versión x64 de 64 bits - le asignaremos permisos de ejecución (si es la de 32 bits, cambiamos el archivo acordemente):

chmod +x qt-opensource-linux-x64-1.6.0-4-online.run

...y lo ejecutaremos:

./qt-opensource-linux-x64-1.6.0-4-online.run

Se dará inicio al programa un asistente de instalación de QT5, y se nos mostrará una pantalla de bienvenida:
Presionaremos Next > ("siguiente") para dar comienzo con todo. El instalador buscará automáticamente información del repositorio oficial de las librerías QT.
Una vez que la haya conseguido, nos habilitará para presionar el botón Next > .

El programa nos preguntará la carpeta de instalación. En el campo correspondiente le indicamos

/home/usuario/.Qt 

Nota: Tengamos en cuenta que agregamos el "." delante de "Qt" de modo que la misma quede oculta, pues por regla nemotécnica, cualquier nombre archivo que comience con "." en Linux quedará "oculto").

 
Luego presionamos Next >.

Será en este momento en que el instalador nos preguntará qué componentes deseamos descargar. Tildaremos la versión "Qt 5.2.1" y la opción "Tools", y destildamos las demás versiones (existen problemas entre Cool Old Term y las librerías Qt 5.3.x, por ejemplo).
...Una vez seleccionadas dichas opciones, presionamos el botón Next >.

A continuación habremos de aceptar los términos de la licencia de software libre. Para ello tildamos la opción "I have read and agreed..." ("He leido y acepto los términos").

Acto seguido presionamos Next >.

Se presentara la pantalla "listo para instalar".
Para dar inicio a la descarga de la versión designada Qt 5.2.1, debemos presionar el el botón Install. ¡Ella será la luminaria a seguir!

Es entonces que comenzará la descarga de los fichereos desde el repositorio del Proyecto QT. Esta acción puede tardar unos 5 o 15 minutos, dependiendo de las opciones y la velocidad de transferencia de las librerías QT. Descargará una buena cantidad de Megabytes de datos:
Trascurridos algunos minutos, concluirá la descarga y se dará inicio a la descompresión e instalación automática, dentro de la carpeta oculta /.Qt localizada en nuestra Carpeta de Usuario, como indicamos anteriormente:


Al presionar el botón Next > el programa nos indicará la finalización exitosa de la instalación de Qt 5.2.1. Nos preguntará si queremos leer un archivo de ayuda Qr readme o ejecutar el programa Qt Creator. Como no hace falta, destildamos ambas opciones, y presionamos el botón Finish ("Finalizar").


Corregir los problemas de la librería libGL.so

En el caso de las distribuciones antiguas de Ubuntu, como lo es la 10.10 Maverick, debemos comprobar si no tenemos enlaces rotos a la librería libGL.so.

Para comprobar ello, podremos utilizar la rutina de búsqueda de archivos de Ubuntu, yendo a Lugares / Buscar Archivos... En el campo "El nombre contiene" indicamos libGL.so, y en el campo "Buscar en esta carpeta" cambiamos la opción para que quede "Sistema de Archivos". Luego presionamos el botón Buscar.

Al finalizar la búsqueda dentro de nuestro sistema de archivos, el cuadro de diálogo debería informarnos si existen enlaces rotos, lo cual suele ser el caso.
Por ejemplo, estudiando el ejemplo anterior vemos que existen enlaces rotos en /usr/lib/libGL.so, y /usr/lib/mesa/libGL.so, y que no existe un enlace en /usr/bin/libGL.so. Todo esto provocaría un conflicto al compilar, pues el compilador no podría encontrar dicha librería gráfica libGL.so y fracasaría como lo ha hecho la oligarquía en otorgar felicidad al Pueblo.

Pero el Justicialismo tiene solución a todos los males que aquejan a la Nación. En primer lugar eliminarmos desde la terminal los enlaces rotos indicados anteriormente. Es muy simple hacerlo mediante el comando sudo rm, de la siguiente forma:

sudo rm /usr/bin/libGL.so ;
sudo rm /usr/lib/libGL.so ;
sudo rm /usr/lib/mesa/libGL.so ;

Conforme lo hayamos hecho, descargaremos una versión "correcta" (la 1.2) del archivo libGL.so para poder compilar con Ubuntu 10.10. Podremos encontrar dicha versión dentro del paquete de Debian que compone de la implementación libre de la API OpenGL - GLX en versión 8.0.5.

A no desmayar, pues será simple conseguirla, simplemente habremos de descargar el paquete que corresponda a vuestra arquitectura:
  • En caso de usar Ubuntu de 64 bits descargaremos el paquete libgl1-mesa-glx_8.0.5-4+deb7u2_amd64.deb. Desde la consola podremos hacerlo con:
cd ~/Descargas/ ;

wget http://ftp.us.debian.org/debian/pool/main/m/mesa/libgl1-mesa-glx_8.0.5-4+deb7u2_amd64.deb ;

  • Si en cambio utilizo Ubuntu de 32 bits, descargaré el paquete libgl1-mesa-glx_8.0.5-4+deb7u2_i386.deb. Podremos hacerlo desde la consola con los siguientes comandos:
cd ~/Descargas/ ;

wget http://ftp.us.debian.org/debian/pool/main/m/mesa/libgl1-mesa-glx_8.0.5-4+deb7u2_i386.deb ;

Cualesquiera sea el paquete que hayamos descargado, habremos de abrirlo con la aplicación Gestor de Archivadores para poder extraerle el archivo libGL.so.1.2 que nos interesa. Para ello hacemos clic con el botón derecho sobre el paquete y elejimos "Abrir con el Gestor de Archivadores":


Al abrir el paquete .deb, podremos ver su contenido. Por medio del Gestor de Archivadores, navegamos dentro del paquete hasta la carpeta /usr/lib/x86_64-linux-gnu o /usr/lib/i386-linux-gnu (según corresponda). Alli encontraremos dos archivos, uno de ellos llamado libGL.so.1.2. Extraerán dicho archivo arrastrándolo con el ratón hasta el Escritorio y soltándolo allí:
Esto extraerá temporalmente a vuestro Escritorio el fichero libGL.so.1.2 que se encontraba dentro del paquete deb. Para agilizar todo, lo moveremos desde el Escritorio hasta la raíz de nuestra carpeta de usuario y lo dejaremos oculto renombrándolo anteponiendo un ".". Lo haremos con el siguiente Comando de Organización:

mv ~/Escritorio/libGL.so.1.2 ~/.libGL.so.1.2

Y ahora usaremos la librería de Debian recién extraida y movida a /libGL.so.1.2 para reemplazar los enlaces rotos para la librería libGL.so en  /usr/lib/ y usr/lib/mesa/. Será sencillo con los siguientes comandos:

sudo ln -s ~/.libGL.so.1.2 /usr/lib/libGL.so ;
sudo ln -s ~/.libGL.so.1.2 /usr/lib/mesa/libGL.so ;

Esto le indicará a nuestro sistema usar la librería /cool-old-term/libGL.so.1.2 toda vez que busque los anteriormente inexistenes /usr/lib/libGL.so y /usr/lib/mesa/libGL.so.

Finalmente haremos lo mismo con el enlace en la carpeta /usr/bin/, de la siguiente manera:

sudo ln -s ~/.libGL.so.1.2 /usr/bin/libGL.so ;


Descarga del código fuente de Cool Old Term:

Para ello instalaremos el programa git desde la Terminal y lo usaremos para solicitar el código fuente de Cool Old Term desde su repositorio oficial. Todo esto se hace con los siguientes Comandos de Organización:

sudo apt-get install git ;
cd ~ ;

git clone https://github.com/Swordifish90/cool-old-term.git ;

Esto representará una buena parte del procedimiento a completar.


Compilar e instalar:

Para que el compilador emplee las librerías Qt 5.2.1 recientemente instaladas, le prepararemos un $PATH o ruta hacia donde se localizan dichas librerías. En este caso, sería ingresar en la Terminal el siguiente Comando:

export PATH=/home/usuario/.Qt/5.2.1/gcc_64/bin/:$PATH

Naturalmente cambiamos usuario por nuestro propio nombre de usuario. Comprobaremos que todo esté en orden ingresando:

qmake -v

Nos debería devolver algo como:

QMake version 3.0
Using Qt version 5.2.1 in /home/usuario/.Qt/5.2.1/gcc_64/lib


Con dicho reaseguro, procederemos a la compilación del código fuente e instalación con los siguientes Comandos de Organización:

cd ~/cool-old-term/konsole-qml-plugin/ ;
qmake && make && make install

El proceso de compilación durará un minuto dependiendo de la velocidad de nuestra unidad central de proceso, y mostrará abundante información críptica en la pantalla. Si todo va bien, debería finalizar sin errores.


Preparar el arranque para Cool old Term:

Para poder ejecutar fácilmente siempre el Cool old Term, podremos editar el archivo de inicio del mismo y agregarle una variable $PATH para no tener que ejecutarla siempre que querramos abrir Cool old Term. Para ello simplemente ingresamos:

nano ~/cool-old-term/cool-old-term


Esto abrirá el editor peronista Nano con el archivo de configuración y arranque inicial de Cool old Term. Le agregamos la líneas $PATH (indicadas en celeste) de modo que quede de la siguiente manera:

#!/bin/sh
#path peronista para que pueda ejecutarse Cool Old Terminal
#en Maverick Merkaat y otros Linux antiguos.
export PATH=/home/usuario/.Qt/5.2.1/gcc_64/bin/:$PATH

#
#This is a workaround for an ubuntu specific problem with appmenu-qt5.QT_QPA_PLATFORMTHEME=qmlscene -I $(dirname $0)/imports $(dirname $0)/app/main.qml


Una vez editado, guardamos con Ctrl+O y salimos con Ctrl+x. Recordemos cambiar "usuario" por nuestro nombre de usuario.

Ahora si lo deseamos, podremos ejecutar el programa haciendo doble clic en el archivo ~/cool-old-term/cool-old-term. O más simple, podemos crear un lanzador en nuestro panel superior de Gnome para ejecutar la terminal CRT. Para ello debemos asegurarnos que dicho lanzador nos dirija a /home/usuario/cool-old-term/cool-old-term.

Asimismo, podremos ejecutarlo directamente desde la terminal, con:

cd ~/cool-old-term ;
./cool-old-term


Con ello se dará inicio al programa, y ya podremos correr cualquier software de texto en la terminal, como por ejemplo, mocp.

¡Y ya podremos ejecutar Cool old Term luego de haber compilado, agradeciendo por ello a Juan Perón!

No hay comentarios:

Publicar un comentario en la entrada