Date: Sun, 28 Jul 2013 18:41:42 +0300 From: David Naylor <naylor.b.david@gmail.com> To: freebsd-emulation@freebsd.org Subject: Re: Why linuxlator rejects libc.so.6 for sligtly newer GNU/Linux 2.6.24 ? Message-ID: <1501259.PApCjomb5h@dragon.dg> In-Reply-To: <51EC1F1F.2050504@rawbw.com> References: <51EC1F1F.2050504@rawbw.com>
next in thread | previous in thread | raw e-mail | index | archive | help
--nextPart1465116.zPSddJrrcW Content-Transfer-Encoding: 7Bit Content-Type: text/plain; charset="ISO-8859-1" On Sunday, 21 July 2013 10:49:19 Yuri wrote: > I am trying to run one Linux program on 9.1 amd64. > I copied all relevant shared libraries from Ubuntu and set the directory > with LD_LIBRARY_PATH and libc.so.6 with LD_PRELOAD. > The newer version of libc.so.6 causes the problem: loader for some > reason doesn't accept it and complains: > > ERROR: ld.so: object 'my-libs/libc.so.6' from LD_PRELOAD cannot be > preloaded: ignored. > > This special libc.so.6 is from GNU/Linux 2.6.24 > google-talk-libs/libc.so.6: ELF 32-bit LSB shared object, Intel 80386, > version 1 (SYSV), dynamically linked (uses shared libs), > BuildID[sha1]=0x81a55e819c61f581e6a9179eaf59726dd80aea31, for GNU/Linux > 2.6.24, stripped > While supplied with linux_base-f10-10_7 libc.so.6 is from GNU/Linux 2.6.9: > /compat/linux/lib/libc.so.6: ELF 32-bit LSB shared object, Intel 80386, > version 1 (SYSV), dynamically linked (uses shared libs), > BuildID[sha1]=0x4f5aefe82ff9a8102064d90e7a03c283b6751c39, for GNU/Linux > 2.6.9, not stripped > > Difference is only in the minor version. Why this library gets rejected? The short answer is that Linux does not follow a version system that most people are familiar with. Since the 2.6.x (and now 3.x) days the value of "2.6." and "3." have had no meaning. To my understanding the version number "x" does not guarantee backward compatibility for the KI/ABI/API (although syscall I think is backward compatible). So, on FreeBSD 9 the Linuxulator supports version 2.6.16, which is not feature compatible with 2.6.24 as the ".24" does not denote a bug fix level as most would understand but an arbitrary increase the the number (my view is that the Linux kernel version has no value other than a monotonically increases series, except for if and when it has a forth denomination). Googling will indicate more about the exact meaning of the Linux kernel version. --nextPart1465116.zPSddJrrcW Content-Type: application/pgp-signature; name="signature.asc" Content-Description: This is a digitally signed message part. -----BEGIN PGP SIGNATURE----- Version: GnuPG v2.0.19 (FreeBSD) iEYEABECAAYFAlH1SckACgkQUaaFgP9pFrLIGACdH7PQXGRY5NP5WUu/wo/hL7Q6 E3AAnivM+5VKI9twDOTMtz0w8ltqBqMX =nv5e -----END PGP SIGNATURE----- --nextPart1465116.zPSddJrrcW--
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?1501259.PApCjomb5h>