ports/102474: linux_base-fc-4_8 appears broken, does not allow to run Linux binaries

Boris Samorodov bsam at ipt.ru
Fri Aug 25 10:25:29 UTC 2006


On Fri, 25 Aug 2006 08:23:20 +0200 Alexander Leidinger wrote:
> Quoting Boris Samorodov <bsam at ipt.ru> (from Fri, 25 Aug 2006 02:28:36 +0400):
> > On Thu, 24 Aug 2006 23:48:08 +0200 Markus Hoenicka wrote:
> >> Boris Samorodov writes:
> >
> >>  > Can you give me a link to ktrace.out for
> >>  > "ktrace -i /compat/linux/usr/bin/ldd /compat/linux/sbin/ldconfig"?
> >
> >> Yes, please have a look at:
> >
> >> http://refdb.sourceforge.net/stuff/ldd/ktrace.out
> >
> > Aha, /compat/linux/usr/bin/ldd is a script. Can't say for sure should
> > it work or not but something strange does exist:
> > -----
> >  24546 ktrace   RET   ktrace 0
> >  24546 ktrace   CALL  execve(0xbfbfe85e,0xbfbfe75c,0xbfbfe768)
> >  24546 ktrace   NAMI  "/compat/linux/usr/bin/ldd"
> >  24546 ktrace   NAMI  "/bin/sh"
> >  24546 ktrace   NAMI  "/libexec/ld-elf.so.1"
> >  24546 sh       RET   execve 0
> > -----
> >
> > Alexander, can you comment on this behaviour? Thanks!

> The kernel contains code to detect if a linux program is a script and
> contains "#!" at the beginning. If it detects this, it tries to start
> the linux version of the interpreter. At least it should do that. If
> the above isn't a cut-down version of the ktrace, and if the linux ldd

It is a cut-down version of ktrace. I expected that a linux shell
should be execed, but not a native one. And later this shell is trying
to find /lib/ld-linux.so.2 and boils out!

> does contain "#!" as the first two characters of the file (I can't
> check ATM), then there's something wrong here.

Yep:
-----
# uname -a
FreeBSD bsam.ru 6.1-STABLE FreeBSD 6.1-STABLE #0: Sat Aug 19 00:13:01 MSD 2006     bsam at bsam.ru:/usr/obj/usr/src/sys/GENERIC  i386
# head -1 /compat/linux/usr/bin/ldd
#! /bin/sh
-----

> Regarding the lib problem in the PR: FreeBSD 6.x and fc4 contain a
> libc.so.6. So the order of the ld path (/compat/linux/etc/ld.so.conf
> or how it is spelled) may matter. I don't have a 6.x system to test
> this, so someone has to play around with it and report here (don't
> forget to rerun the linux ldconfig with the '-R /compat/linux' option
> after each change). If this doesn't solve the problem, I need to see
> the complete ktrace of a failing program which tries to link with
> libc.so.6.

The lib problem is already fixed (non-standard file /usr/lib/libc.so.6
existed at the submitter's machine). Thanks for your help.


WBR
-- 
Boris Samorodov (bsam)
Research Engineer, http://www.ipt.ru Telephone & Internet SP
FreeBSD committer, http://www.FreeBSD.org The Power To Serve


More information about the freebsd-emulation mailing list