5

I've got a working ironhide setup (ubuntu 11.10). Most applications works fine with the nvidia-drivers (nvidia-current), but I can't get Google Earth (64bit .deb installed) working with or without optirun. Anyone know how to fix this?

ERROR: ld.so: object 'librrfaker.so' from LD_PRELOAD cannot be preloaded: ignored. ./googleearth-bin: error while loading shared libraries: libGL.so.1: wrong ELF class: ELFCLASS64

cbm8580
  • 115
  • 2
  • 7

4 Answers4

2

Google Earth is 32-bit.

On Ubuntu Oneiric and later, there is a different method to install 32-bit libraries. For libGL.so:

sudo apt-get install libgl1-mesa-glx:i386

I recommend Bumblebee over Ironhide, see Is a NVIDIA GeForce with Optimus Technology supported by Ubuntu?

Lekensteyn
  • 174,277
  • Thanks, is Ironhide not being maintained any longer? I have really no issues with Ironhide except I can't get Google Earth running. – cbm8580 Jan 21 '12 at 11:28
  • 1
    Martin is very busy with other stuff, http://www.martin-juhl.dk/2012/01/ironhide-is-sleeping-but-not-forever/. Currently, Bumblebee provides more stable features than Ironhide and the only missing thing is a UI, but that will be fixed in a later version. – Lekensteyn Jan 21 '12 at 11:37
1

Try the following command in a terminal:

optirun32 /opt/google/earth/free/google-earth

It works for me.

jokerdino
  • 41,320
Ricaxe
  • 36
1

Make sure ia32-libs is installed:

sudo apt-get install ia32-libs

What's sure is that you need the 32 bit version of libGL because Google still don't provide a 64 bit version of google-earth.

Maxime R.
  • 3,820
  • It says 64bit on the Google Earth download page, but I can try this. I'm just wondering if installing this package may cause havoc on my system since I've already got the 64bit version installed? – cbm8580 Jan 17 '12 at 21:59
  • The "64bit " version you're referring to is a 32bit one linked to 32bit libraries, there's no real 64bit executable, that's why it's complaining about "wrong ELF class", therefore, you need ia32-libs. – Maxime R. Jan 17 '12 at 22:05
  • You shouldn't get any issue doing this not to mention it may already be installed. – Maxime R. Jan 17 '12 at 22:11
  • Seems ia32-libs is already installed on my system... – cbm8580 Jan 18 '12 at 21:34
  • What gives you ldd /opt/google/earth/free/googleearth-bin |grep libGL.so ? – Maxime R. Jan 19 '12 at 02:06
  • Output: libGL.so.1 => not found libGL.so.1 => not found – cbm8580 Jan 20 '12 at 06:56
  • Well, that's weird because it should be installed by ia32-libs. ll /usr/lib32/libGL.so ? Then maybe try LD_LIBRARY_PATH=/usr/lib32 google-earth. You can use apt-file search libGL.so to locate the library and point to the folder using LD_LIBRARY_PATH (though it's a controversial workaround: http://stackoverflow.com/q/882110/343834) – Maxime R. Jan 20 '12 at 07:42
  • ll /usr/lib32/libGL.so gives: lrwxrwxrwx 1 root root 15 2011-10-07 22:30 /usr/lib32/libGL.so -> mesa/libGL.so.1 Does this mean it points to the wrong path? – cbm8580 Jan 21 '12 at 11:12
  • No, it means that libGL.so is a link to /usr/lib32/mesa/libGL.so.1 which should also be correctly installed. – Maxime R. Jan 21 '12 at 16:22
0

At first glance, the words "wrong ELF class: ELFCLASS64" seem to suggest that Google-earth is trying to load a 64-bit library whereas the Google-earth executable is actually 32-bit (or vice-versa).

What version of Ubuntu are you using (x86 or x86-64) and are you sure you're using the corresponding version of Google earth? The download page for Google earth offers both 32 and 64-bit versions. Download Google earth

nedR
  • 135