Port-amd64 archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Re: Installing 32-bit packages on 64-bit systems



Ottavio Caruso <ottavio2006-usenet2012%yahoo.com@localhost> writes:

> On 5 August 2014 12:29, Ottavio Caruso 
> <ottavio2006-usenet2012%yahoo.com@localhost> wrote:
>> I wonder, and I was also wondering with regards to linux emulation,
>> wouldn't chrooting into /emul/whatever defy the principle of
>> emulation? How can the system emulate a foreign architecture if it
>> doesn't know where to find the system calls in the kernel? Or would it
>> know it anyway?
>
> Answering my own question, probably just try and see if this works?
> That would open new opportunities for me.

The system calls work because of information in the binary.  Being in
/emul has nothing to do with that.  The point of /emul/foo is that when
a binary of system foo is being run, namei() will find a file /x/y/z as
/emul/foo/x/y/z before it finds the real /x/y/z, enabling those emulated
binaries to find their shlibs in their own namespace.

The point of chrooting is not to fake out the emulation.  It's to ensure
that a call to write a new file /x/y/z puts it in /emul/foo/x/y/z, where
some later run of the emulated program will find it, and where it
*won't* be found by native programs.  Basically each world should be
kept separate.  This is not an absolute rule from first principles, but
an approach to manage complexity.

In theory one should be able to install linux binary packages from
pkgsrc on a netbsd system too.

Attachment: pgpZ0cRoN2Cg4.pgp
Description: PGP signature



Home | Main Index | Thread Index | Old Index