Linux emulation missing (?) feature
Ivan Popov
pin at math.chalmers.se
Fri Apr 18 03:47:12 PDT 2003
Hello,
as a casual FreeBSD user I can have missed some recent updates,
but to the best of my knowledge:
I have tested Linux ABI on FreeBSD 4.7 and discovered a missing feature,
that is important for me and can be very useful in general.
On Linux it is totally legitimate to run ELF binaries with both an
implicit loader (hardwired into the binary, most often like
"/lib/ld-linux.so.2") and an explicit loader, say by doing (execve()-ing)
/lib/ld-linux.so.2 /some/binary argu men ts
[it is the same thing as with explicit choice of script interpreter
instead of relying on #! or for overriding unsuitable #! ]
The explicit loader choice is very important when you want to
run different binaries with different versions of glibc. The loader and
the glibc library have to match each other, so it is not enough to set a
proper LD_LIBRARY_PATH, you have to either recompile a binary and hardwire
a different loader path, or run the loader explicitely.
The explicit loader works excellently on Linux, but not on FreeBSD.
As for my tests, FreeBSD Linux ABI loader refuses to load and start a
"shared library" /younameit/ld-linux.so.2, despite that it would
suit as an executable as well.
The question is - how hard would it be to implement the functionality?
Is there a chance for it to be done?
Regards,
--
Ivan
More information about the freebsd-emulation
mailing list