Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 490066 - =sci-geosciences/googleearth-7.1.2.2041 - Version bump
Summary: =sci-geosciences/googleearth-7.1.2.2041 - Version bump
Status: RESOLVED NEEDINFO
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: All Linux
: Normal enhancement (vote)
Assignee: Marc Schiffbauer
URL: http://www.gearthblog.com/blog/archiv...
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2013-11-01 18:32 UTC by Eric Siegel
Modified: 2014-05-02 19:35 UTC (History)
1 user (show)

See Also:
Package list:
Runtime testing required: ---


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Eric Siegel 2013-11-01 18:32:59 UTC
googleearth-7.1.1.1888 is no longer the version of the deb file on Google's servers.

dpkg --info says "Version: 7.1.2.2041-r0"

Reproducible: Always
Comment 1 Julian Ospald 2013-11-02 17:29:12 UTC
crashes for me immediately, even after removing the whole ~/.googleearth config folder
Comment 2 Eric Siegel 2013-11-02 18:15:43 UTC
(In reply to Julian Ospald (hasufell) from comment #1)
> crashes for me immediately, even after removing the whole ~/.googleearth
> config folder

So, I guess we shouldn't add this ebuild?  And just wait for the next version?
Comment 3 Julian Ospald 2013-11-02 20:06:53 UTC
(In reply to Eric Siegel from comment #2)
> (In reply to Julian Ospald (hasufell) from comment #1)
> > crashes for me immediately, even after removing the whole ~/.googleearth
> > config folder
> 
> So, I guess we shouldn't add this ebuild?  And just wait for the next
> version?

I don't add broken software to the tree. If you can make it work, let me know.
Comment 4 Michael Lange 2013-11-03 00:51:20 UTC
googleearth-7.1.2.2041 works for me on amd64 with r600-radeon (mesa)

renamed 
epatch "${FILESDIR}"/${PN}-${PV%.*}.1871-desktopfile.patch
to
epatch "${FILESDIR}"/${PN}-7.1.1.1871-desktopfile.patch
in ebuild, and the patch applied

i starting googleearth from xbmc
Comment 5 Richard Cox 2013-11-03 14:36:24 UTC
Worked for me as well, but I had to discard my old .googleearth directory.

I make the corrections to the ebuild Michael Lange suggested in the previous message.

I'm running ~AMD64 using the latest nvidia-drivers.
Comment 6 Richard Cox 2013-11-03 14:54:20 UTC
Correcting what I said earlier...it doesn't crash, but it is not even attempting to render landscape.  So it really isn't working for me.
Comment 7 Julian Ospald 2013-11-03 22:26:29 UTC
Another crash happened while handling crash!
Comment 8 Julian Ospald 2013-11-22 11:46:10 UTC
did any1 have more luck?
Comment 9 amirpli 2013-12-11 15:37:04 UTC
(In reply to Julian Ospald (hasufell) from comment #8)
> did any1 have more luck?

It is possible to run Google Earth 7.1/amd64 (checked with 7.1.2/2041) on Gentoo, using the native system QT libraries instead of the bundled one. This solves most of the crash problems and also the Panoramio empty frames problem, and is pretty stable (but see the comments at the end). It also results in a great performance of GE, maybe because the bundled QT libraries are compiled for "generic" architecture instead of amd64.

<Historical_reference>

For Fedora 19 I posted a similar solution, see http://forums.fedoraforum.org/showpost.php?p=1678303&postcount=60 . There can still be problems probably related to 3D handling in some display drivers. I didn't encounter such a problem myself, using the proprietary Nvidia driver on Fedora 19. However in my tests I could consistently crash the 3D driver of VirtualBox 4.3.4. In other distributions the native libraries are still not up to date with the latest patches, especially the one that fixes the crash on search, so this method doesn't work well on them - this includes openSUSE 13.1, Ubuntu 13.10 (and also 14.04 in its current state), Debian (including testing and unstable), Mageia 3 (and the current state of 4), AltLinux 7.0.1 and latest ArchLinux.

Several months ago I posted in GE's group on productforums.google.com a solution for the frequent crashes and blank Panoramio frames for GE 7.1.1/7.1.2 x86_64, based on a recompilation of the QT libraries with patches from Fedora's QT library packages. I also recompiled these libraries for openSUSE, AltLinux, and Mageia. A Gentoo user reported on productforums.google.com that my recompiled libraries for openSUSE work on Gentoo, but I didn't test this myself.

</Historical_reference>

The Gentoo native Qt library solution
-------------------------------------
I tested the following solution on an up to date Gentoo system with Gnome 3, running on QEMU/KVM. I didn't test it on Gentoo/KDE, but I know from my tests on other distributions that currently the Panoramio frames misbehave on KDE (a workaround is possible, and I'm going to check this issue further).

As you may know (also appears in TODO in GE's ebuild), if you try to use the system QT libraries, you get the error:
./googleearth-bin: symbol lookup error: ./libbase.so: undefined symbol: _Z34QBasicAtomicInt_fetchAndAddOrderedPVii

I didn't test this solution on 32bit installations. I don't even know if it is needed there.

1. You need the following up to date packages installed in your system:
1A. media-libs/freeimage (currently 3.15.3-r2)
1B. dev-qt/qtcore (currently 4.8.5)
1C. dev-qt/qtgui (currently 4.8.5-r1)
1D. dev-qt/qtwebkit (currently 4.8.5)

2. Install the 7.1 x86_64 package from Google's download site (currently 7.1.2.2041). To that end I modified the ebuild of 7.1.1.1888 and emerged it.

3. In GE's running directory /opt/gopogleeaerth, remove the 4 original libQt* libraries:
cd /opt/googleearth
mkdir bundled-qtlib
mv libQt* bundled-qtlib/

Similarly you can remove plugins/imageformats/*, but anyway they are not going to be used.

4. If you invoke googleearth now, you will get the known error:
./googleearth-bin: symbol lookup error: ./libbase.so: undefined symbol: _Z34QBasicAtomicInt_fetchAndAddOrderedPVii

The missing function can be generated as follows:

4A. Create a file (I called it baifaao.cpp) with this content:

/* amirpli 2013/11/28 */
#include <QtCore/QAtomicInt>
extern "C" {
	int _Z34QBasicAtomicInt_fetchAndAddOrderedPVii(QAtomicInt* a, int b) {
		return a->fetchAndAddOrdered(b);
	}
}

4B. Compile it and create the shim library with:
gcc -I/usr/include/qt4 -O3 -fPIC --shared baifaao.cpp -o baifaao.so
Put baifaao.so in the directory /opt/googleearth .

5. In the file googleearth (in the directory /opt/googleearth), add the following line, e.g. before the line starting with LD_LIBRARY_PATH:

export LD_PRELOAD=/usr/lib64/libfreeimage.so.3:/opt/googleearth/baifaao.so

6. I didn't test if the locale bug in the QT libs is patched (may cause a major coordinate shift if the locate is not en_US.UTF-8). If it is still present with your locale, add also:
export LC_NUMERIC=en_US.UTF-8

Enjoy!

Comments:
1. Don't try to invoke googleearth as superuser (unless this is a login / su -l, but there is no point in that anyway).
Else the files GE writes in your home directory may get owned by root, and GE will then malfunction when you invoke it from your user.
2. If you had a previous installation of GE, and now encounter a problem like no Panoramio icons, clear GE's cache.
3. The library preload happens also for programs invoked from GE (e.g. if you use the external browser option).
I didn't encounter a real problem in that, but if needed it can be prevented by using a relative path for the preloaded libraries.
4. I didn't check here using the flash plugin for the YouTube layer. But I guess almost no one uses this layer now since Google removed it from the menu and the gallery.
5. Clicking on Tools->Options->3D Font->Fotns->Choose 3D Font still crashes GE.
6. There are still QtWebKit related crashes when clicking on pictures in "Places" icones (camera and square-inside-square icones) using the internal browser.
Comment 10 Mike Johnson 2014-01-22 00:08:04 UTC
Thanks to amirpli it works for me.  For over 6 mo. on & off have tried to solve the panaramio problem, I know the thread he speaks of by rote, including the Gentoo users' comment.  Didn't work for me, I believe it was my fault.
Anyhow, following the above steps religiously did work, panaramio now works great, GE flies, just about everything except 3d fonts in options as he states.
One caveat here in case it helps someone, I was using eselect qtgraphicssystem opengl and had weird graphic glitches after the changes.  Finally I reset it to native, rebooted and now all perfect, in fact, that setting was causing me unrelated problems elsewhere that I was blaming "something in gtk" for.  This is on a nvidia go7600 with proprietary drivers, ~amd64.
Comment 11 Mike Johnson 2014-01-22 02:03:04 UTC
And it fixed panoramio on my ~x86 machine as well!  Of course had to change line in step 5 to lib from lib64, otherwise all good.  That machine has an Intel GPU, so I knew long ago it wasn't a video driver issue.
That machine also has the same troubles with the qt opengl driver, but that's a whole different bug report.
Comment 12 Marc Schiffbauer gentoo-dev 2014-02-08 16:10:02 UTC
I added an updated version to the tree. It works for me. At least it starts and I can see the earth ;)

Is this version ok for you?

I think USE=-bundled-libs may cause some problems though
Comment 13 aditsu 2014-03-01 12:04:35 UTC
It started the first time I tried, but it had a lot of spots/artifacts that looked like it was sprayed with semi-transparent black paint. Not sure if those spots were there from the start, but I noticed them after getting into street view (and they remained afterwards). I changed a setting, I think it was something about the graphics mode (changing to safe mode), and it asked me to restart the program. After closing it and trying to start it again, it crashes every time:


[0301/195829:ERROR:net_util.cc(2195)] Not implemented reached in bool net::HaveOnlyLoopbackAddresses()
[0301/195829:ERROR:nss_ocsp.cc(581)] No URLRequestContext for OCSP handler.
(repeated about 20 times)
[0301/195829:ERROR:nss_ocsp.cc(581)] No URLRequestContext for OCSP handler.


Another crash happened while handling crash!


Version details: sci-geosciences/googleearth-7.1.2.2041 with USE="bundled-libs", on amd64.
Is there something I need to change? Does the ebuild include amirpli's fixes?
Comment 14 aditsu 2014-03-01 12:14:53 UTC
Update: after renaming the ~/.googleearth/Cache folder, I was able to run it once. Dark spots are still there. When I tried to restart it, it crashed again.
Comment 15 Marc Schiffbauer gentoo-dev 2014-05-02 16:26:28 UTC
Any updates here? All I can say is that it works for me... :-/

have you tried to disable/close the appearing window when it is starting up?
I experienced a crash on startup, but when I immediately close this "Tips&Tricks" windows on startup it does not crash.
Comment 16 aditsu 2014-05-02 19:35:18 UTC
(In reply to Marc Schiffbauer from comment #15)
> have you tried to disable/close the appearing window when it is starting up?
> I experienced a crash on startup, but when I immediately close this
> "Tips&Tricks" windows on startup it does not crash.

Ok, it seems to stop crashing after disabling that. I still get the spots though.