Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 31 Jul 2008 16:41:07 -0700
From:      Steve Kargl <sgk@troutmask.apl.washington.edu>
To:        Chuck Robey <chuckr@telenix.org>
Cc:        freebsd-amd64@freebsd.org
Subject:   Re: app programming on freebsd amd64
Message-ID:  <20080731234107.GA99946@troutmask.apl.washington.edu>
In-Reply-To: <489243B0.80307@telenix.org>
References:  <4891F3F3.8090608@telenix.org> <20080731195527.GT1359@server.vk2pj.dyndns.org> <489243B0.80307@telenix.org>

next in thread | previous in thread | raw e-mail | index | archive | help
On Thu, Jul 31, 2008 at 06:58:56PM -0400, Chuck Robey wrote:
> Peter Jeremy wrote:
> > 
> > There are a couple of open PRs about this but fixing it is non-trivial.
> > 
> > Your only current option is to install an i386 world (as well as your
> > amd64 world) and chroot into it to build i386 apps.
> 
> Oh, you're telling me that if I run one app as 32 bit (compiling it, the whole
> enchilada, as 32 bit) would only work if I had the OS, kernel and all libs, as
> 32 bits?  I couldn't just run the X11 as 32 bits?  I mean, not only run it as 32
> bits, also compile it as 32 bits?  If I did that, it would use the OS and libs
> as 64 bits, and be therefore incorrect?
> 
> If that's so, it does throw a wrench into things, forcing another set of
> decisions on me, so I need a confirmation, you'll understand.

He's telling you that -m32 doesn't work because the necessary
run time support is missing.

troutmask:kargl[202] cat h.c
#include <stdio.h>
int main(void)
{
  printf("Hello world!\n");
  return 0;
}
troutmask:kargl[203] cc -o z h.c
troutmask:kargl[205] ldd z
z:
        libc.so.7 => /lib/libc.so.7 (0x20063c000)
troutmask:kargl[206] file z
z: ELF 64-bit LSB executable, x86-64, version 1 (FreeBSD), for FreeBSD 8.0 (800040), dynamically linked (uses shared libs), FreeBSD-style, not stripped
troutmask:kargl[207] cc -o z -m32 h.c
/usr/bin/ld: skipping incompatible /usr/lib/libgcc.a when searching for -lgcc
/usr/bin/ld: skipping incompatible /usr/lib/libgcc.a when searching for -lgcc
/usr/bin/ld: cannot find -lgcc

-- 
Steve



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20080731234107.GA99946>