linux_base-f8 giving me guff

Kostik Belousov kostikbel at gmail.com
Tue Apr 29 18:18:43 UTC 2008


On Tue, Apr 29, 2008 at 10:01:25PM +0400, Boris Samorodov wrote:
> On Tue, 29 Apr 2008 16:13:42 +0300 Kostik Belousov wrote:
> > On Tue, Apr 29, 2008 at 04:51:28PM +0400, Boris Samorodov wrote:
> > > On Tue, 29 Apr 2008 13:14:59 +0300 Kostik Belousov wrote:
> > > > On Tue, Apr 29, 2008 at 10:46:10AM +0400, Boris Samorodov wrote:
> > > > > (drop freebsd-ports@ from cross posting)
> > > > > 
> > > > > On Tue, 29 Apr 2008 07:50:01 +0300 Kostik Belousov wrote:
> > > > > > On Mon, Apr 28, 2008 at 05:37:18PM -0500, Scot Hetzel wrote:
> > > > > > > On Mon, Apr 28, 2008 at 5:16 PM, Walter Venable <weaseal at gmail.com> wrote:
> > > > > > > > /usr/ports/emulators/linux_base-f8 $ sudo make
> > > > > > > > ===>  linux_base-f8-8_3 compat.linux.osrelease: 2.4.2 is not supported.
> > > > > > > > *** Error code 1
> > > > > > > >
> > > > > > > > Stop in /usr/ports/emulators/linux_base-f8.
> > > > > > > >
> > > > > > > > Ok -- I get it, linux kernel 2.4.2 isn't supported.  How do I get around
> > > > > > > > this issue?  I'm running 6.3-RELEASE-p2...
> > > > > > > 
> > > > > > > sysctl compat.linux.osrelease=2.6.16
> > > > > 
> > > > > > The question that seems to be relevant there is why the port refuses to
> > > > > > install with some compat.linux.osrelease value ? Does port run some
> > > > > > linux binary during install time (unlikely) ?
> > > > > 
> > > > > Any linux port that installs a shared library (including linux_base
> > > > > ports) runs linux ldconfig while (at the very end of) installing.
> > > > > Since that ldconfig cannot run with such an old kernel it stops with
> > > > > the error.
> > > 
> > > > Thank you for the explanation. I propose the error condition to be
> > > > ignored, or warning to be printed etc. The ability to install linux-base
> > > > and app ports without even loading linux.ko seems to be too useful.
> > > 
> > > Can you please give (an) example(s) when it is necessary to install
> > > files with stale /usr/compat/linux/etc/ld.so.cache?
> > > 
> > > I'm not sure if it make more good than harm... So far we rely on
> > > linuxulator being run and check for compat.linux.osrelease value
> > > while installing. If that check is removed then we have only FreeBSD
> > > OSVERSION which is very unreliable at compat.linux.osrelease quessing.
> 
> > Assume "I think" or "I propose" at the start of the each sentence below.
> > This is only a gentle request for possible enhancement.
> 
> > It is wrong^H^H^H erm inconvenient to have ld.so.cache to be formed
> > at the port installation time. The /usr/local/etc/rc.d/linux_ldconfig
> > script that may be run at arbitrary time by the user is much more useful.
> 
> Hm, if I understand you correctly, you say that "make install" or
> "pkg_add" will not be enough to run a linux application (say, which
> had installed a linux gtk port as a dependency)? And a user should
> run "make linux-config" or something else?
> 
> > I want to have the ability to install linux ports and make the packages
> > from them in the chroots without disrupting the host or enabling the
> > less tested linux kernel ABI support on the host. I do know about the
> > per-jail ABI support, but it is not as convenient as chroot nor it
> > solves the issue of the less tested kernel code.
> 
> Are you speaking about packaging f8 linux ports? Seams not a big
> trouble since it is (almost) supported only at 8-CURRENT. Which itself
> is known to be experimental. Packages for 8-CURRENT should be created
> only at -current.
> 
> Nevertheless, in my recent work on f8 ports and bsd.xxx.mk I
> introduced a variable LINUX_OSRELEASE which may be used (say at
> /etc/make.conf) to define which value of compat.linux.osrelease to use
> while dealing with ports. I've tested LINUX_OSRELEASE=2.4.2 while
> actually running with linux.osrelease=2.6.16 and f8 linux ports.
> 
> Would it be enough for your packaging needs?
> 
> > The linux_ldconfig rc script would also ease the local installations
> > of the programs that are not present in the ports. Overall, this would
> > bring the linux dso handling close to the handling of the freebsd dso,
> > that I consider good enough.
> 
> Either we use ldconfig while installing or we force a user do it
> later. The latter may be done immediately -- just delete all ldconfigs
> from linux ports and display a message "run ... by hand". I think that
> the great majority of linuxulator users would complain.

I do not ask to change the present default behaviour, but for the
possibility to request the port infrastructure to skip running anything
requiring Linux ABI emulator during port installation. As a consequence,
the linux.osrelease stuff becomes irrelevant.

See the parallel answer by netchild@ that quite accurately reformulates
my intent.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 195 bytes
Desc: not available
Url : http://lists.freebsd.org/pipermail/freebsd-emulation/attachments/20080429/ae862837/attachment.pgp


More information about the freebsd-emulation mailing list