FreeBSD Squeak installation problem: ELF binary type "0"notknown.

John Carey john at carey.com
Sat May 17 06:43:46 UTC 2003


Hello,

There are two ways I know to handle Linux compatability within FreeBSD.  The
first is to load the Linux Binary Compatability Module at boot time (which
is what I do) and the second is to rebuild your kernel with Linux
Compatability incluced.

To rebuild the kernel with the Linux Binary Compatability Module, just add
this line t6 your configuration file and recompile:

    options    LINUX

I personally prefer to load kernel modules rather then rebuild each time I
want to try something, so I will describe that process for you.  You do that
by adding this line to your /etc/rc.conf file:

    linux_enable=YES

You have to reboot your BSD system to load the new kernel module.  You
should be able to verify that the module is loaded with kldstat.  Among the
kernel modules it lists should be linux.ko.

The rest of the process is the same for both options.  First of all, you
need to install the Linux runtime libraries:

    # cd /usr/ports/emulators/linux_base
    # make all install

That should install a number of libraries in /compat/linux.

Lastly, if you get an error message when you try to run your Linux ELF
binary, you may have to "brand" it.  The Linux ELF binary should already
have been "branded" through the normal build process, but sometimes, it
needs be done explicitly.  At any rate, assuming that you have correctly
completed the above steps, when you try to run the Linux ELF binary in
question, namely the Squeak VM, if you get an error message like "ELF binary
type not known," that means that there is an ELF binary branding problem.
It could mean other things as well, and since I haven't tried any of this
myself, it may well be, but since you have read this far, you might as well
try branding your binary like so:

    # brandelf -t Linux <name_of_your_SqueakVM>

I have had pretty good luck running Linux binaries on FreeBSD this way.

I hope this helps.

John

----- Original Message -----
From: "Derek Brans" <brans at nerdonawire.com>
To: "The general-purpose Squeak developers list"
<squeak-dev at lists.squeakfoundation.org>
Sent: Friday, May 16, 2003 7:58 PM
Subject: Re: FreeBSD Squeak installation problem: ELF binary type
"0"notknown.


> Thanks Ned and Chris.
>
> Compiling from sources in lang/Squeak3 is unsuccessful because of a
problem
> mentioned on
> http://minnow.cc.gatech.edu/squeak/1786 posted by Frank Shearar.
>
> On that same page, Brent mentions:
> Note: The Unix port, maintained by Ian Piumarta, should install fine on
> FreeBSD
> [3/5/2003 bkv]
>
> Installing Linux compatibility has problems of its own. Typing "linux" at
> the command line yields:
>
> kldload: can't load linux: Exec format error
>
> Any suggestions would be appreciated.
>
> Thank you!
>
> Derek Brans
> Nerd on a Wire
> Web design that's anything but square
> http://www.nerdonawire.com
> phone: 604.874.6463
> mailto: brans at nerdonawire.com
>
> ----- Original Message -----
> From: "chris moline" <reddaemon at shaw.ca>
> To: "The general-purpose Squeak developers list"
> <squeak-dev at lists.squeakfoundation.org>
> Sent: Friday, May 16, 2003 6:59 PM
> Subject: Re: FreeBSD Squeak installation problem: ELF binary type "0"
> notknown.
>
>
> > On Fri, 2003-05-16 at 18:46, Derek Brans wrote:
> > > I downloaded and installed the Squeak VM from
> > > Squeak-3.4-1.i686-pc-linux-gnu.tar.gz.  I had to point INSTALL script
> > > to the i686-pc-linux-gnu directory
> >
> > is there a reason you cant use the squeak port in lang/squeak2 or
> > lang/squeak3?
> >
> > >
> > > when I type "squeak" I get the following error:
> > > ELF binary type "0" not known.
> > > Abort
> >
> > prolly cause its a linux binary. you could also try enabling linux
> > compatibility and see if that works. enabling linux compatibility should
> > be described somewhere in the handbook if you dont know how.
> >
> > sincerly,
> > chris moline
> >
> >
> >
> >
>
>
>
>



More information about the Squeak-dev mailing list