Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 347616 - googleearth 6 crashes with libexpat in emul-linux-x86
Summary: googleearth 6 crashes with libexpat in emul-linux-x86
Status: RESOLVED INVALID
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: [OLD] Library (show other bugs)
Hardware: AMD64 Linux
: High normal (vote)
Assignee: Vlastimil Babka (Caster) (RETIRED)
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2010-12-02 23:54 UTC by Carl Michal
Modified: 2011-04-28 23:05 UTC (History)
3 users (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 Carl Michal 2010-12-02 23:54:14 UTC
GoogleEarth 6 (6.0.0.1735) on an amd64 system crashes on startup.  A backtrace (below) shows it segfaults in /usr/lib32/libexpat.so.1

I tried both emul-linux-x86-baselibs-20100915-r1 and 20100611

I also tried replacing /usr/lib32/libexpat.so.1 with libexpat.so.1.5.2 from a 32-bit gentoo install, but still see the same crash.  Strangely though, googleearth 6 runs ok on that system.

Interestingly though, replacing this libexpat with one from a 32 bit Ubuntu install (libexpat.so.1.5.2 from libexpat1-2.0.1-4ubuntu1.1) lets googleearth run just fine on this gentoo amd64 system.

ubuntu's libexpat.so.1.5.2 links to libpthread.so.0 while the gentoo expat does not.  Not sure if that's relevant.

A backtrace of a crash on amd64 shows:
Program received signal SIGSEGV, Segmentation fault.
0xf4fa5c92 in ?? () from /usr/lib32/libexpat.so.1
(gdb) bt
#0  0xf4fa5c92 in ?? () from /usr/lib32/libexpat.so.1
#1  0xf4fa5e8f in ?? () from /usr/lib32/libexpat.so.1
#2  0xf4fa5ebd in ?? () from /usr/lib32/libexpat.so.1
#3  0xf4faab4a in ?? () from /usr/lib32/libexpat.so.1
#4  0xf4fab8e1 in ?? () from /usr/lib32/libexpat.so.1
#5  0xf4facdf1 in ?? () from /usr/lib32/libexpat.so.1
#6  0xf4fad99a in ?? () from /usr/lib32/libexpat.so.1
#7  0xf4fa463c in XML_ParseBuffer () from /usr/lib32/libexpat.so.1
#8  0xecb6bbd5 in ?? () from /usr/lib32/dri/i965_dri.so
#9  0x083339f0 in ?? ()
#10 0x0000016a in ?? ()
#11 0x00000000 in ?? ()

To get googleearth running at all on a gentoo system, you need to:
ln -s /lib/ld-linux.so.2 /lib/ld-lsb.so.3 
If not, you get a cryptic error message about the binary not being found.



Reproducible: Always
Comment 1 Kalin KOZHUHAROV 2010-12-09 05:10:32 UTC
Well, I have no idea why is the `ln -s /lib/ld-linux.so.2 /lib/ld-lsb.so.3` trick needed, but with it GoogleEarth 6 (6.0.0.1735) works ok on amd64 system.

I ran `ln -s /lib/ld-linux.so.2 /lib/ld-lsb.so.3` as root, then downloaded in installed GE as normal user locally in ~/google-earth as prompted.

Running it is fine, sometimes it does crash randomly. I find it more stable if I run it like `LD_LIBRARY_PATH=~/google-earth:/usr/lib32 ~/google-earth/googleearth-bin` instead of using its own bash script (based on several tries, may be just lucky).

Too bad Google has not changed the way they distribute that (adding the version to the name), it is PITA to update the digest every time.
Comment 2 Kalin KOZHUHAROV 2010-12-09 05:16:34 UTC
Sorry, wrong Enter key... here is my info, FYI:

$ eix -I -c  emul-linux-x86-baselibs 
[I] app-emulation/emul-linux-x86-baselibs (20100915-r1@11/15/10): Provides precompiled 32bit libraries

$ emerge --info
Portage 2.1.9.25 (default/linux/amd64/10.0, gcc-4.4.4, glibc-2.11.2-r3, 2.6.36 x86_64)
=================================================================
System uname: Linux-2.6.36-x86_64-Intel-R-_Core-TM-_i7_CPU_920_@_2.67GHz-with-gentoo-1.12.14
Timestamp of tree: Thu, 09 Dec 2010 03:45:02 +0000
distcc 3.1 x86_64-pc-linux-gnu [disabled]
ccache version 2.4 [enabled]
app-shells/bash:     4.1_p7
dev-java/java-config: 2.1.11-r1
dev-lang/python:     2.6.5-r3
dev-util/ccache:     2.4-r7
dev-util/cmake:      2.8.1-r2
sys-apps/baselayout: 1.12.14-r1
sys-apps/sandbox:    2.3-r1
sys-devel/autoconf:  2.13, 2.65-r1
sys-devel/automake:  1.9.6-r3, 1.10.3, 1.11.1
sys-devel/binutils:  2.20.1-r1
sys-devel/gcc:       4.4.4-r2
sys-devel/gcc-config: 1.4.1
sys-devel/libtool:   2.4-r1
sys-devel/make:      3.81-r2
virtual/os-headers:  2.6.36.1 (sys-kernel/linux-headers)
ACCEPT_KEYWORDS="amd64"
ACCEPT_LICENSE="*"
CBUILD="x86_64-pc-linux-gnu"
CFLAGS="-march=core2 -msse4 -mcx16 -msahf -O2 -pipe"
CHOST="x86_64-pc-linux-gnu"
CONFIG_PROTECT="/etc /usr/share/X11/xkb /usr/share/config /var/lib/hsqldb"
CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/env.d /etc/env.d/java/ /etc/fonts/fonts.conf /etc/gconf /etc/revdep-rebuild /etc/sandbox.d /etc/terminfo"
CXXFLAGS="-march=core2 -msse4 -mcx16 -msahf -O2 -pipe"
DISTDIR="/var/tmp/distfiles"
FEATURES="assume-digests binpkg-logs ccache distlocks fixlafiles fixpackages news noinfo parallel-fetch protect-owned sandbox sfperms splitdebug strict unknown-features-warn unmerge-logs unmerge-orphans userfetch"
GENTOO_MIRRORS="ftp://gg3.net/pub/linux/gentoo/ ftp://ftp.ecc.u-tokyo.ac.jp/GENTOO http://ftp.jaist.ac.jp/pub/Linux/Gentoo/ "
LDFLAGS="-Wl,-O1 -Wl,--as-needed"
LINGUAS="en ja bg"
MAKEOPTS="-j8"
PKGDIR="/usr/portage/packages"
PORTAGE_CONFIGROOT="/"
PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --compress --force --whole-file --delete --stats --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages"
PORTAGE_TMPDIR="/var/tmp"
PORTDIR="/usr/portage"
PORTDIR_OVERLAY="/usr/portage-layman/pkalin /usr/portage-layman/jokey /usr/portage-layman/pkalin /usr/portage-layman/jokey"
SYNC="rsync://rsync1.jp.gentoo.org/gentoo-portage"
USE="X a52 acl acpi alsa amd64 aspell audio berkdb bzip2 cairo caps cddb cdparanoia cjk cleartype cli cracklib crypt cups cxx dbus djvu dri dv enca encode exif fam ffmpeg flac fontconfig fpx gcrypt gd gdbm gif gimp gnustep gnutls gpm gs gtk hdri iconv imagemagick ipv6 jpeg jpeg2k libnotify lzo mad mmx mng modules mp3 mudflap multilib ncurses nls nptl nptlonly ogg openexr opengl openmp pam pcap pcre pdf perl plotutils png pnm postscript pppd pvr python qt3support qt4 quicktime rar raw readline rtc schroedinger sdl session sip smp speex spell sse sse2 ssl ssse3 svg sysfs tcpd theora threads tiff truetype unicode v4l2 video vorbis wav wmf xattr xml xmp xorg xv xvid xvmc zlib" ALSA_PCM_PLUGINS="adpcm alaw asym copy dmix dshare dsnoop empty extplug file hooks iec958 ioplug ladspa lfloat linear meter mmap_emul mulaw multi null plug rate route share shm softvol" APACHE2_MODULES="actions alias auth_basic authn_alias authn_anon authn_dbm authn_default authn_file authz_dbm authz_default authz_groupfile authz_host authz_owner authz_user autoindex cache cgi cgid dav dav_fs dav_lock deflate dir disk_cache env expires ext_filter file_cache filter headers include info log_config logio mem_cache mime mime_magic negotiation rewrite setenvif speling status unique_id userdir usertrack vhost_alias" CAMERAS="nikon canon ptp2" COLLECTD_PLUGINS="df interface irq load memory rrdtool swap syslog" ELIBC="glibc" GPSD_PROTOCOLS="ashtech aivdm earthmate evermore fv18 garmin garmintxt gpsclock itrax mtk3301 nmea ntrip navcom oceanserver oldstyle oncore rtcm104v2 rtcm104v3 sirf superstar2 timing tsip tripmate tnt ubx" INPUT_DEVICES="keyboard mouse synaptics virtualbox" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LINGUAS="en ja bg" PHP_TARGETS="php5-2" RUBY_TARGETS="ruby18" USERLAND="GNU" VIDEO_CARDS="nv nvidia nouveau vesa virtualbox" XTABLES_ADDONS="quota2 psd pknock lscan length2 ipv4options ipset ipp2p iface geoip fuzzy condition tee tarpit sysrq steal rawnat logmark ipmark dhcpmac delude chaos account" 
Unset:  CPPFLAGS, CTARGET, EMERGE_DEFAULT_OPTS, FFLAGS, INSTALL_MASK, LANG, LC_ALL, PORTAGE_BUNZIP2_COMMAND, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS
Comment 3 Carl Michal 2010-12-09 18:54:12 UTC
ok, this is a bit weird, but looks like its maybe related to some mismatch in  video driver on my system.  I downgraded from xf86-video-intel-2.13.0 to 2.9.1 (and libdrm-2.4.22 to 2.4.20-r1, and now the problem is gone.
Comment 4 pierre 2011-04-28 23:05:07 UTC
I had the same problem
I solved it by removing ~/.drirc
I read that if you don't want to remove this file, you just have to make sure you add a new line at the end of it...