Solución al problema de las fotos de Panoramio en Google Earth

beach-surf

Hace unas semanas que volví a reinstalar openSUSE 13.1, principalmente porque mis experimentos con el repositorio de GNOME 3.12 no acabaron del todo bien y me decidí por una instalación limpia (KDE en esta ocasión, ya véis que poco me duró el amor por GNOME Shell …) y dejarme de parches e historias.

En 20 minutos tenía mi sistema funcionando, con los habituales retoques que hago después de cada instalación y ese puñado de programas preferidos que todo linuxero añade nada más hacer el primer login en el sistema y con la partición raíz casi vacía, un montón de gigas libres para instalar cosas y malgastar por doquier.

Estos días me dió por instalar Google Earth en su versión 7.1.2 que funciona de manera aceptable (cuando digo aceptable es porque no hace crash ni cosas por el estilo, algo que durante mucho tiempo he padecido en diferentes distros), pero me encontré con el grave problema de que no se ven la mayoría de imágenes, en concreto las de Panoramio, un bug que se da de manera bastante habitual en las distros GNU/Linux, debido a un problema de compatibilidad con las librerías Qt que proporciona el programa.

Despues de googlear un poco encontré una solución de un usuario del forum de openSUSE llamado Amirpli que quiero compartir con vosotros, en mi caso lo apliqué para la distro del Gecko, pero soluciones similares basadas en el script de Amirpli se pueden utilizar en otras distribuciones como Ubuntu o Arch.

Si no tenéis el programa instalado obtenemos la última versión de Google Earth, desde la página oficial, elegís vuestra arquitectura y le dais a descargar. Una vez descargada la podemos instalar con añadir/quitar programas, apper o desde consola mediante zypper (en este caso 64 bits)

su

zypper in google-earth-stable_current_x86_64.rpm

Como más os guste, eso si…si  ya lo teníais instalado con anterioridad aseguraros de eliminar la carpeta oculta de “.googleearth” de vuestro directorio personal, para evitar problemas de configuración con lo que vamos a hacer ahora:

  • Vamos al tema entonces, el primer paso es instalar el repositorio de juegos de openSUSE, en caso de que no lo tengáis, así que ejecutamos como root:
su

zypper ar -f http://download.opensuse.org/repositories/games/openSUSE_13.1/ games
  •  Ahora toca instalar una serie de paquetes y librerías (si!..lo se…son un montón, pero..eche o que hai!)
zypper in libfreeimage3 libqt4-x11 libqt4 libQtWebKit4 libqt4-devel gcc-c++

googleearth-terminal

  • Después nos vamos a ir a donde hemos instalado Google Earth y vamos a hacer un nuevo directorio (bundled-qtlib), donde vamos a mover todas esas librerías libQt* que nos sirven para nada
cd /opt/google/earth/free
mkdir bundled-qtlib
mv libQt* bundled-qtlib/

googleearth-terminal1

  • A continuación vamos a crear un script al que llamaremos baifaao.cpp, utilizando un editor de texto (por ej. Kate o Gedit) en el que copiamos lo siguiente:
/* amirpli 2013/11/28 */
#include <QtCore/QAtomicInt>
extern "C" {
        int _Z34QBasicAtomicInt_fetchAndAddOrderedPVii(QAtomicInt *a, int b) {
                return a->fetchAndAddOrdered(b);
        }
}
  • Ahora toca compilar, pero antes copiamos el script baifaao.cpp desde la /home o la carpeta donde lo hayáis creado al directorio /opt/google/earth/free
cp baifaao.cpp /opt/google/earth/free
  • Nos situamos en dicho directorio
cd /opt/google/earth/free
  • y ahora si, finalmente ya podemos compilar:
gcc -I/usr/include -O3 -fPIC --shared baifaao.cpp -o baifaao.so

googleearth-terminal2

  • Todavía nos queda un último paso que es tocar el archivo de configuración googleearth, situado en el directorio /opt/google/earth/free y casi al final entre las lineas “cd $script_path;” y “LD_LIBRARY_PATH=.:$LD_LIBRARY_PATH ./googleearth-bin “$@””, lo siguiente:
export LD_PRELOAD=/usr/lib64/libfreeimage.so.3:/opt/google/earth/free/baifaao.so

googleearth_archivo

Y listo, ahora la próxima vez que iniciéis Google Earth, deberían aparecer por fin esas condenadas fotos...reconozco que parece un poquito rollo, pero en lo que os lleva tomar un café (quizás dos..) ya lo tenéis hecho.

Fuente | openSUSE Forums

Vía | Planetyazid

6 thoughts on “Solución al problema de las fotos de Panoramio en Google Earth”

  1. Juanca_Cba says:

    Eres el mejor! Aunque no uso, ni voy a usar de aquí en más, un producto de Google por razones más que conocidas (salvo el gmail hasta ver cuál servicio es el más conveniente para migrar el correo) este tutorial es magnífico y seguramente ayudará a todos aquellos que usen los servicios de esa empresa espía.
    Te felicito por el aporte, de cualquier manera! Entrada de calidad por el tenor del contenido (script, compilación, configuración, etc., etc., etc.).
    Saludos.
    ________________________________________________________________

    No NSA softwares were used in the making of this comment

    1. tannhausser says:

      Gracias amigo! Aunque en realidad todo el mérito es de la persona que dio con la solución y la posteo en el foro de openSUSE. Pero a veces estas cosas tan específicas son complicadas de encontrar, así que me viene bien tenerla a mano y si de paso en algún momento le sirve a alguien, pues mucho mejor todavía…

      Tampoco es que lo use mucho el google earth (en realidad tiro más de Google Maps o incluso OpenStreetMap) pero ayer me dió por instalarlo y ver si habían actualizado la base de imágenes, que complementos nuevos había etc.., y bueno lo de siempre ves que algo no funciona y aunque no lo vayas a usar mucho, te dan ganas de solucionarlo XD

      Saludos!

  2. Alberto says:

    Muchas gracias. He estado buscando una solucción para el problema de las fotos en Google Earth 7 por todas partes, había probado incluso otra solucción propuesta por amirpli, pero nada, no funcionó. De casualidad encuentro tu página con la solucción adecuada y perfectamente explicada, felicidades por el excelente trabajo. Al margen de lo que cada uno piense de los programas de Google y a sabiendas de lo que sacan de nosotros, creo que esta aplicación es muy buena y se use mucho o poco, siempre termina por resultar útil.

    He tenido que hacer algunos ajustes para adaptarlo a Debian Testing que es lo que uso desde hace muchos años. Los cambios que hay que hacer en esta rapa de Debian son estos:

    Dependencias.
    En la rama testing de Debian, las librerías libqt4-x11 y libqt4 no existen. Como yo siempre uso KDE ya tenía casi todas las librerías QT necesarias instaladas, tan solo tuve que instalar la de desarrollo, que en Debian se llama, libqt4-dev.

    Para compilar.
    gcc -I/usr/include/qt4 -O3 -fPIC –shared baifaao.cpp -o baifaao.so

    En el script de inicio, googleearth, cambia la ruta a la librería libfreeimage.
    export LD_PRELOAD=/usr/lib/libfreeimage.so.3:/opt/google/earth/free/baifaao.so

    Saludos desde A Coruña.
    Alberto

    1. tannhausser says:

      Gracias @Alberto! me alegra que funcionara la solución con los retoques que le has dado para Debian

      Casualmente hoy estuve en esa playa…

      A ti que eres de Coruña seguro que te suena 🙂

      Saudos!

      1. Alberto says:

        Gracias a ti tannhausser.

        Ya lo creo que la conozco, de cuando la mili en Ferrol (que tiempos!) y otras veces que he ido después. Es un sitio muy bonito.

        Saludos.

        1. tannhausser says:

          🙂

Deja un comentario