Sign up ×
Unix & Linux Stack Exchange is a question and answer site for users of Linux, FreeBSD and other Un*x-like operating systems. It's 100% free, no registration required.

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/ 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

export LD_LIBRARY_PATH="/opt/lib"

I placed the 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 The problem is, I don't know which ones I need to copy over?

Then I discovered ldd. ldd ./firefox shows:

./firefox: /lib/ version `GLIBC_2.17' not found (required by ./firefox) =>  (0x00007fffe9289000) => /lib/ (0x00007f80ee456000) => /lib/ (0x00007f80ee252000) => /usr/lib/ (0x00007f80edf3d000) => /lib/ (0x00007f80edcba000) => /lib/ (0x00007f80ed934000)
    /lib64/ (0x00007f80ee68b000) => /lib/ (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?

share|improve this question

1 Answer 1

linux-vdso (and linux-gate) are in-kernel libraries that handle the loading of ELF binaries; if you have a (relatively recent) Linux kernel, it has those. A probably-complete list would be:

Some of those you may not think you need, but dependencies have a way of sneaking up on you.

share|improve this answer
Thanks for the info. I'm locating the files now to move over and have 2 questions. It looks like many of the files, such as are symlinks to others, like If I take the real file is the binary smart enough to find it? Or should I rename the file to the same as the symlink? Or recreate the symlinks in my /opt/lib? Are the numbers after the .so relevant? Will it work if becomes –  Nick Jan 8 '14 at 8:48
Also, I could not find libicdn, libieee, or librpcsvc... –  Nick Jan 8 '14 at 8:51
I added the libraries to /opt/lib/ but am still getting the error error while loading shared libraries: __vdso_time: invalid mode for dlopen(): Invalid argument. –  Nick Jan 8 '14 at 9:17
On my mobile; will answer more when I get home if nobody else has.... –  Bandrami Jan 8 '14 at 11:12

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.