How to use older libs in 32bit mode?

Michael R. Wayne amd64 at wayne47.com
Tue Nov 23 23:06:56 PST 2004


On Fri, Nov 19, 2004 at 05:44:24PM -0800, David O'Brien wrote:
> On Tue, Nov 16, 2004 at 12:26:30AM -0500, Michael R. Wayne wrote:
> > I'm trying to use a 32 bit executable which uses older libraries
> > (e.g. libm.so.2) and can not easily be regenerated.
> 
> This should be fine.  You just want *.so.*.
> 
> > I've tried copying the libs from a i386 5.3 RELEASE system into
> > /usr/lib32 with no success.
> 
> Please give details about "no success" -- that doesn't give us much to go
> on.

Sorry.  No success as in it cores.

I reduced the problem down to a very simple case:
   > cat hello.c
   #include <stdio.h>
   main () { printf("Hello world\n"); }

Put this onto a 5.3 RELEASE i386 platform and compiled it:
   > file hello
   hello: ELF 32-bit LSB executable, Intel 80386, version 1 (FreeBSD), for FreeBSD 5.3.0, dynamically linked (uses shared libs), not stripped

It won't run though:
   > ./hello
   Segmentation fault (core dumped)

I did run the script to build the libs:
   > ls /usr/lib32 | wc
	393     393    5069

/\/\ \/\/


More information about the freebsd-amd64 mailing list