[ru@FreeBSD.org: install32]

David O'Brien obrien at FreeBSD.org
Fri Dec 9 09:34:11 PST 2005


On Thu, Dec 08, 2005 at 08:22:11AM +0200, Ruslan Ermilov wrote:
> On Wed, Dec 07, 2005 at 03:15:39PM -0800, David O'Brien wrote:
> > On Wed, Dec 07, 2005 at 10:49:39AM +0200, Ruslan Ermilov wrote:
> > > Forwarding this to the list since Peter doesn't reply.  If you
> > > have an opinion on the subject, please reply.
> > ..
> > > >     .                    Makefile.inc1 
> > > >     share/mk             bsd.lib.mk bsd.prog.mk 
> > > >   Log:
> > > >   Add the NO_INCS knob to bsd.prog.mk and bsd.lib.mk to not include
> > > >   bsd.incs.mk, and use it when installing 32-bit compat libraries
> > > >   on amd64.  This causes it to *not* overwrite native headers with
> > > >   i386 versions, which was the case with <fenv.h> and <vgl.h>.
> > ..
> > > This commit fixes a breakage but also raises the following question.
> > > If we don't install headers, do we need anything except 32-bit rtld
> > > and shared libraries?  Currently, we also install .a libraries, .o
> > > objects, and some data files.
> > 
> > At the moment we don't support building 32-bit binaries on a 64-bit host.
> > So we don't want .a's and .o's installed.
> 
> Well, we do (to some extent), but I'm not sure if we want it or not:

We don't support it.  Peroid.
 
> : $ uname -p
> : amd64
> : $ cat a.c
> : #include <stdio.h>
> : int main(void) { printf("Hello, world!\n"); return (0); }
> : $ cc -m32 -B/usr/lib32 -L/usr/lib32 -o a a.c
> : $ file a
> : a: ELF 32-bit LSB executable, Intel 80386, version 1 (FreeBSD), dynamically linked (uses shared libs), not stripped
> : $ ./a
> : Hello, world!

This only worked because you didn't use any data types for which the
amd64 and i386 headers differ.

-- 
-- David  (obrien at FreeBSD.org)
Q: Because it reverses the logical flow of conversation.
A: Why is top-posting (putting a reply at the top of the message) frowned upon?


More information about the freebsd-amd64 mailing list