Manualinux
http://www.nvu.com http://www.gimp.org InicioPresentaciónActualizacionesManualesDescargasNoticiasAgradecimientoEnlaces

Entornos GráficosAplicaciones

DesarrolloEmuladoresInternetJuegosMultimediaSistema

Instalar Java en GNU/LinuxInstalar PySide desde cero

Instalar las Librerías de GNOME 2





Instalar las Librerías de GNOME 2




Copyright

Copyright © José Luis Lara Carrascal  2013-2018   http://manualinux.eu



Sumario

Introducción
Instalación
Desinstalación




Introducción  

Este manual se incluye en la web como complementario del manual del gestor de películas, vMovieDB, y de cualquier otro manual de instalación de aplicaciones, que requiera de las dependencias de las librerías de GNOME 2 para su ejecución. En el manual se incluye la instalación de paquetes que forman parte de GNOME 3, pero que son compatibles y requeridos para la compilación de las librerías de GNOME 2.



Instalación  

Dependencias

Herramientas de Compilación


Entre paréntesis la versión con la que se han compilado las Librerías de GNOME 2 para la elaboración de este documento.

* GCC - (8.1.0)
* Gawk - (4.2.1)
* M4 - (1.4.18)
* Libtool - (2.4.6)
* Make - (4.2.1)
* Intltool - (0.51.0)
* Automake - (1.16.1)
* Gettext - (0.19.8.1)
* Autoconf - (2.69)
* Pkg-config - (0.29.2)
* Bison - (3.0.5)
* Flex - (2.6.4)
* GTK-Doc - (1.28)

Librerías de Desarrollo

* Xorg - (7.7 / xorg-server 1.20.0)
* Avahi - (0.7)
* D-Bus - (1.12.8)
* D-Bus-Glib - (0.110)
* Gamin - (0.1.10)
* Gdk-Pixbuf - (2.36.12)
* GLib - (2.56.1)
* GObject Introspection - (1.56.1)
* GTK+ - (2.24.32)
* Hal - (0.5.14)
* Kerberos5 - (1.16)
* Libcanberra - (0.30)
* Libgcrypt - (1.8.3)
* Libglade - (2.6.4)
* Libxml2 - (2.9.8)
* OpenLDAP - (2.4.46)
* OpenSSL - (1.0.2o)
* Polkit - (0.113-git)
* Popt - (1.16)

Módulos de Perl

* XML::Parser - (2.44)



Descarga

01. libIDL-0.8.14.tar.bz2
02. ORBit2-2.14.19.tar.bz2
03. libbonobo-2.32.1.tar.bz2
04. gnome-mime-data-2.18.0.tar.bz2
05. GConf-3.2.6.tar.xz
06. gnome-vfs-2.24.4.tar.bz2
07. libgnome-2.32.1.tar.bz2  |  05_glib-2.54-ftbfs.patch
08. libart_lgpl-2.3.21.tar.bz2
09. libgnomecanvas-2.30.3.tar.bz2
10. libbonoboui-2.24.5.tar.bz2
11. libgnome-keyring-3.12.0.tar.xz
12. libgnomeui-2.24.5.tar.bz2  |  03_glib-2.54-ftbfs.patch



Optimizaciones

$ export {C,CXX}FLAGS='-O3 -march=amdfam10 -mtune=amdfam10'

Donde pone amdfam10 se indica el procesador respectivo de cada sistema seleccionándolo de la siguiente tabla:
* La opción '-march=' establece el procesador mínimo con el que funcionará el programa compilado, la opción '-mtune=' el procesador específico para el que será optimizado. 

* Los valores separados por comas, son equivalentes, es decir, que lo mismo da poner '-march=k8' que '-march=athlon64'.

* En versiones de GCC 3.2 e inferiores se utiliza la opción '-mcpu=' en lugar de '-mtune='.
Valores CPU
Genéricos
Intel
AMD
VIA
IDT

Optimizaciones adicionales

Optimizaciones adicionales
Graphite
$ export {C,CXX}FLAGS+=' -floop-interchange -ftree-loop-distribution -floop-strip-mine -floop-block'
LTO
$ export AR=gcc-ar RANLIB=gcc-ranlib NM=gcc-nm
$ export {C,CXX}FLAGS+=' -fuse-linker-plugin -flto=2'
Donde pone 2 se indica el número de núcleos de nuestro procesador, si sólo tiene uno, utilizar el parámetro -flto

Parámetros adicionales

Establecer la ruta de búsqueda de directorios de librerías en sistemas de 64 bits multiarquitectura
$ export LDFLAGS+=" -L/usr/lib64 -L/usr/local/lib64"



01) libIDL-0.8.14  Bloc de Notas Información general sobre el uso de los comandos

Terminal de Usuario

$ tar jxvf libIDL-0.8.14.tar.bz2
$ cd libIDL-0.8.14
$ ./configure --disable-dependency-tracking --prefix=/usr \
--disable-static --libdir=/usr/lib64
$ make
$ cd ..

Terminal de Root

# cd libIDL-0.8.14
# make install-strip
# ldconfig -v
# cd ..

Explicación de los comandos

--disable-dependency-tracking : Acelera el tiempo de compilación.
--prefix=/usr : Instala la librería en el directorio principal /usr.

--disable-static : Desactiva la compilación de las librerías estáticas, al no ser necesarias para la ejecución de los programas.
--libdir=/usr/lib64 : Instala la librería en /usr/lib64, en sistemas de 64 bits multiarquitectura.


02) ORBit2-2.14.19

Terminal de Usuario

$ tar jxvf ORBit2-2.14.19.tar.bz2
$ cd ORBit2-2.14.19
$ find . -name 'Makefile.in' | xargs sed -i 's:-DG_DISABLE_DEPRECATED::g'
$ ./configure --disable-dependency-tracking --prefix=/usr --sysconfdir=/etc \
--localstatedir=/var --disable-static --libdir=/usr/lib64
$ make
$ cd ..

Terminal de Root

# cd ORBit2-2.14.19
# make install-strip
# ldconfig -v
# cd ..

Explicación de los comandos

find . -name 'Makefile.in' | xargs sed -i 's:-DG_DISABLE_DEPRECATED::g' : Soluciona errores de compilación con GLib 2.36 y superiores, como el que se muestra debajo de estas líneas:

linc.c: En la función 'link_init':
linc.c:199:2: error: declaración implícita de la función 'g_thread_supported' [-Werror=implicit-function-declaration]
  if (thread_safe && !g_thread_supported ())
  ^


03) libbonobo-2.32.1

Terminal de Usuario

$ tar jxvf libbonobo-2.32.1.tar.bz2
$ cd libbonobo-2.32.1
$ find . -name 'Makefile.in' | xargs sed -i 's:-DG_DISABLE_DEPRECATED::g'
$ ./configure --disable-dependency-tracking --prefix=/usr --sysconfdir=/etc \
--localstatedir=/var --disable-static --libdir=/usr/lib64
$ make
$ cd ..

Terminal de Root

# cd libbonobo-2.32.1
# make install-strip
# ldconfig -v
# cd ..

Explicación de los comandos

find . -name 'Makefile.in' | xargs sed -i 's:-DG_DISABLE_DEPRECATED::g' : Soluciona errores de compilación con GLib 2.36 y superiores, como el que se muestra debajo de estas líneas:

In file included from client.c:33:0:
../bonobo-activation/bonobo-activation-private.h:34:1: error: nombre de tipo 'GStaticRecMutex' desconocido
 extern GStaticRecMutex _bonobo_activation_guard;
 ^


04) gnome-mime-data-2.18.0

Terminal de Usuario

$ tar jxvf gnome-mime-data-2.18.0.tar.bz2
$ cd gnome-mime-data-2.18.0
$ ./configure --disable-dependency-tracking --prefix=/usr \
--sysconfdir=/etc --localstatedir=/var
$ make
$ cd ..

Terminal de Root

# cd gnome-mime-data-2.18.0
# make install
# cd ..


05) GConf-3.2.6

Terminal de Usuario

$ tar Jxvf GConf-3.2.6.tar.xz
$ cd GConf-3.2.6
$ ./configure --disable-dependency-tracking --prefix=/usr \
--sysconfdir=/etc --localstatedir=/var --with-gtk=2.0 \
--disable-static --libdir=/usr/lib64
$ make
$ cd ..

Terminal de Root

# cd GConf-3.2.6
# make install-strip
# ldconfig -v
# cd ..


06) gnome-vfs-2.24.4

Terminal de Usuario

$ tar jxvf gnome-vfs-2.24.4.tar.bz2
$ cd gnome-vfs-2.24.4
$ find . -name 'Makefile.in' | xargs sed -i 's:-DG_DISABLE_DEPRECATED::g'
$ ./configure --disable-dependency-tracking --prefix=/usr --sysconfdir=/etc \
--localstatedir=/var --disable-static --libdir=/usr/lib64
$ make
$ cd ..

Terminal de Root

# cd gnome-vfs-2.24.4
# make install-strip
# ldconfig -v
# cd ..

Explicación de los comandos

find . -name 'Makefile.in' | xargs sed -i 's:-DG_DISABLE_DEPRECATED::g' : Soluciona errores de compilación con GLib 2.36 y superiores, como el que se muestra debajo de estas líneas:

gnome-vfs-async-job-map.c:30:1: error: nombre de tipo 'GStaticRecMutex' desconocido
 static GStaticRecMutex async_job_map_lock = G_STATIC_REC_MUTEX_INIT;
 ^
gnome-vfs-async-job-map.c:30:45: error: 'G_STATIC_REC_MUTEX_INIT' no se declaró aquí (no en una función)


07) libgnome-2.32.1

Terminal de Usuario

$ tar jxvf libgnome-2.32.1.tar.bz2
$ cd libgnome-2.32.1
$ patch -Np1 -i ../05_glib-2.54-ftbfs.patch
$ find . -name 'Makefile.in' | xargs sed -i 's:-DG_DISABLE_DEPRECATED::g'
$ ./configure --disable-dependency-tracking --prefix=/usr --sysconfdir=/etc \
--localstatedir=/var --disable-static --libdir=/usr/lib64
$ make

Terminal de Root

# cd libgnome-2.32.1
# make install-strip
# ldconfig -v
# cd ..

Explicación de los comandos

patch -Np1 -i ../05_glib-2.54-ftbfs.patch : Aplicamos este parche de la distribución Debian para poder compilar el paquete con GLib 2.54 y superiores. El mensaje de error mostrado por el compilador lo podemos ver en este enlace.

find . -name 'Makefile.in' | xargs sed -i 's:-DG_DISABLE_DEPRECATED::g' : Soluciona errores de compilación con GLib 2.36 y superiores, como el que se muestra debajo de estas líneas:

gnome-program.c: En la función 'gnome_program_init':
gnome-program.c:1882:10: error: 'g_threads_got_initialized' no se declaró aquí (primer uso en esta función)
     if (!g_threads_got_initialized)
          ^


08) libart_lgpl-2.3.21

Terminal de Usuario

$ tar jxvf libart_lgpl-2.3.21.tar.bz2
$ cd libart_lgpl-2.3.21
$ ./configure --disable-dependency-tracking --prefix=/usr \
--disable-static --libdir=/usr/lib64
$ make
$ cd ..

Terminal de Root

# cd libart_lgpl-2.3.21
# make install-strip
# ldconfig -v
# cd ..


09) libgnomecanvas-2.30.3

Terminal de Usuario

$ tar jxvf libgnomecanvas-2.30.3.tar.bz2
$ cd libgnomecanvas-2.30.3
$ ./configure --disable-dependency-tracking --prefix=/usr \
--sysconfdir=/etc --localstatedir=/var \
--enable-glade --disable-static --libdir=/usr/lib64
$ make
$ cd ..

Terminal de Root

# cd libgnomecanvas-2.30.3
# make install-strip
# ldconfig -v
# cd ..


10) libbonoboui-2.24.5

Terminal de Usuario

$ tar jxvf libbonoboui-2.24.5.tar.bz2
$ cd libbonoboui-2.24.5
$ ./configure --disable-dependency-tracking --prefix=/usr --sysconfdir=/etc \
--localstatedir=/var --disable-static --libdir=/usr/lib64
$ make
$ cd ..

Terminal de Root

# cd libbonoboui-2.24.5
# make install-strip
# ldconfig -v
# cd ..


11) libgnome-keyring-3.12.0  Bloc de Notas Información general sobre el uso de los comandos


Terminal de Usuario

$ tar Jxvf libgnome-keyring-3.12.0.tar.xz
$ cd libgnome-keyring-3.12.0
$ ./configure --disable-dependency-tracking --prefix=/usr \
--sysconfdir=/etc --localstatedir=/var --enable-vala=no --libdir=/usr/lib64
$ make
$ cd ..

Terminal de Root

# cd libgnome-keyring-3.12.0
# make install-strip
# ldconfig -v
# cd ..


12) libgnomeui-2.24.5

Terminal de Usuario

$ tar jxvf libgnomeui-2.24.5.tar.bz2
$ cd libgnomeui-2.24.5
$ patch -Np1 -i ../03_glib-2.54-ftbfs.patch
$ ./configure --disable-dependency-tracking --prefix=/usr --sysconfdir=/etc \
--localstatedir=/var --disable-static --libdir=/usr/lib64
$ make

Terminal de Root

# cd libgnomeui-2.24.5
# make install-strip
# ldconfig -v

Explicación de los comandos

patch -Np1 -i ../03_glib-2.54-ftbfs.patch : Aplicamos este parche de la distribución Debian para poder compilar el paquete con GLib 2.54 y superiores. El mensaje de error mostrado por el compilador lo podemos ver en este enlace.

Borrar las locales adicionales instaladas con la utilidad BleachBit

# bleachbit -c system.localizations

Estadísticas de Compilación e Instalación de las Librerías de GNOME 2

Estadísticas de Compilación e Instalación de las Librerías de GNOME 2
CPU AMD Phenom(tm) II X4 965 Processor
MHz 3415.709
RAM 4096 MB
Sistema de archivos XFS
Versión del Kernel 4.16.16-ck1 SMP PREEMPT x86_64
Modo de frecuencia de la CPU ondemand
Versión de Glibc 2.27
Enlazador dinámico GNU gold (Binutils 2.30) 1.15
Compilador GCC 8.1.0 + Ccache 3.4.2
Parámetros de optimización -03 -march=amdfam10 -mtune=amdfam10 -floop-interchange -ftree-loop-distribution -floop-strip-mine -floop-block -fuse-linker-plugin -flto=4
Parámetros de compilación -j4
Tiempo de compilación 4' 08"
Archivos instalados 939
Mostrar/Ocultar la lista de archivos instalados
Enlaces simbólicos creados 26
Mostrar/Ocultar la lista de enlaces simbólicos creados
Ocupación de espacio en disco 27,2 MB



Desinstalación  

Desinstalación como root

1) MODO TRADICIONAL

En los directorios de compilación de todos los paquetes ejecutamos el siguiente comando:

$ su -c "make uninstall"

2) MODO MANUALINUX

El principal inconveniente del comando anterior es que tenemos que tener el directorio de compilación en nuestro sistema para poder desinstalar el programa. En algunos casos esto supone muchos megas de espacio en disco. Con los paquetes de scripts que pongo a continuación logramos evitar el único inconveniente que tiene la compilación de programas, y es el tema de la desinstalación de los mismos sin la necesidad de tener obligatoriamente una copia de las fuentes compiladas.

El orden de desinstalación siguiendo el MODO MANUALINUX es inverso al orden de instalación.

01. libgnomeui-2.24.5-scripts.tar.gz
02. libgnome-keyring-3.12.0-scripts.tar.gz
03. libbonoboui-2.24.5-scripts.tar.gz
04. libgnomecanvas-2.30.3-scripts.tar.gz
05. libart_lgpl-2.3.21-scripts.tar.gz
06. libgnome-2.32.1-scripts.tar.gz
07. gnome-vfs-2.24.4-scripts.tar.gz
08. GConf-3.2.6-scripts.tar.gz
09. gnome-mime-data-2.18.0-scripts.tar.gz
10. libbonobo-2.32.1-scripts.tar.gz
11. ORBit2-2.14.19-scripts.tar.gz
12. libIDL-0.8.14-scripts.tar.gz

$ su 
# tar zxvf libgnomeui-2.24.5-scripts.tar.gz
# cd libgnomeui-2.24.5-scripts
# ./Desinstalar_libgnomeui-2.24.5

Copia de Seguridad como root

Con este otro script creamos una copia de seguridad de los binarios compilados, recreando la estructura de directorios de los mismos en un directorio de copias de seguridad (copibin) que se crea en el directorio /var. Cuando se haya creado el paquete comprimido de los binarios podemos copiarlo como usuario a nuestro home y borrar el que ha creado el script de respaldo, teniendo en cuenta que si queremos volver a restaurar la copia, tendremos que volver a copiarlo al lugar donde se ha creado.

$ su 
# tar zxvf libgnomeui-2.24.5-scripts.tar.gz
# cd libgnomeui-2.24.5-scripts
# ./Respaldar_libgnomeui-2.24.5

Restaurar la Copia de Seguridad como root

Y con este otro script (que se copia de forma automática cuando creamos la copia de respaldo del programa) restauramos la copia de seguridad como root cuando resulte necesario.

$ su 
# cd /var/copibin/restaurar_copias
# ./Restaurar_libgnomeui-2.24.5


Foro Galería Blog


Actualizado el 19-06-2018

Instalar las Librerías de GNOME 2

Instalar Java en GNU/LinuxInstalar PySide desde cero