I built Firefox 26 on Mint 16 because the Ubuntu 10.04 build utilities are too old to build it. It does need to run on 10.04, however, since that's the target OS I'm building for. It built and runs just fine on Mint 16.
When moving the package over to 10.04 and attempting to run, I get errors because the OS uses a different libc version than Firefox was built against.
The actual error is:
/lib/libc.so.6: version `GLIBC_2.17' not found
I've been doing a lot of research trying to solve this, and so far have discovered the following:
I can point a binary at an alternate path for library files with
I placed the
libc.so.6 from Mint 16 into
/opt/lib on 10.04 and ran the above command. But after changing that variable, i get:
error while loading shared libraries: __vdso_time: invalid mode for dlopen(): Invalid argument
Not just for firefox, but for every command, including things like
ls. A bit more research suggests that I need a set of library files to make this work, not just
libc.so.6. The problem is, I don't know which ones I need to copy over?
Then I discovered
ldd ./firefox shows:
./firefox: /lib/libc.so.6: version `GLIBC_2.17' not found (required by ./firefox) linux-vdso.so.1 => (0x00007fffe9289000) libpthread.so.0 => /lib/libpthread.so.0 (0x00007f80ee456000) libdl.so.2 => /lib/libdl.so.2 (0x00007f80ee252000) libstdc++.so.6 => /usr/lib/libstdc++.so.6 (0x00007f80edf3d000) libm.so.6 => /lib/libm.so.6 (0x00007f80edcba000) libc.so.6 => /lib/libc.so.6 (0x00007f80ed934000) /lib64/ld-linux-x86-64.so.2 (0x00007f80ee68b000) libgcc_s.so.1 => /lib/libgcc_s.so.1 (0x00007f80ed71c000)
And I thought, "maybe I just need to copy all of those on the list". Except I couldn't find a
linux-vdso anywhere on Mint 16, and it's vdso that is being complained about.
So my question is, which libraries do I need to move from Mint 16 to Ubuntu 10.04 into /opt/var, to make Firefox run on 10.04?