Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 31 Mar 2005 12:14:47 +0100
From:      Michael Hopkins <michael.hopkins@hopkins-research.com>
To:        "freebsd-amd64@freebsd.org" <freebsd-amd64@freebsd.org>, <freebsd-ports@freebsd.org>, <freebsd-emulation@freebsd.org>, <freebsd-ports-bugs@freebsd.org>
Subject:   Working and broken Linux ports on amd64
Message-ID:  <BE719A37.36B77%michael.hopkins@hopkins-research.com>

next in thread | raw e-mail | index | archive | help


Hi all

I have been installing a few Linux environments from the ports in the last
few days to try and establish a cross-compiler for 32-bit Linux on amd64
(see my other post for the story so far).

I thought it might be useful for others on this path to be told about what
works and what doesn't.  System is:

root@Athlon ~ # uname -a
FreeBSD Athlon 5.3-RELEASE-p5 FreeBSD 5.3-RELEASE-p5 #2: Wed Mar 30 01:46:52
BST 2005     root@Athlon:/usr/obj/usr/src/sys/ATHLON  amd64


First steps
-----------
First of all, I believe you need to do this as pointed out by Axel Gonzalez.

Add these to the kernel and rebuild:

options         LINPROCFS
options         COMPAT_43
options         COMPAT_LINUX32

and on rc.conf:

linux_enable="YES"


Working
-------
linux_base-8 (redhat 8)
linux_base-suse (suse 9.2)
linux_base-debian (debian woody)

All installed OK and gave correct answers to /compat/linux/bin/uname -a


emulators/linux_base-gentoo-stage1
----------------------------------
Starting Terminal in /usr/ports/emulators/linux_base-gentoo-stage1...

bash-2.05b# make
===>  linux_base-gentoo-stage1-2004.3 is marked as broken: Incorrect
pkg-plist.


devel/linux_devtools-7
----------------------
Starting Terminal in /usr/ports/devel/linux_devtools-7...

bash-2.05b# make
===>  linux_devtools-7.1_3 is marked as broken: Incomplete pkg-plist.


emulators/linux_base-rh-9
-------------------------
Makes OK but fails on install with a message something like "script error
for glibc-..." - sorry I didn't copy output so that's from memory.


Slackware 10.1
--------------
I also followed the instructions from here to try slackware which was
suggested by Ulrik Guenther

    http://people.freebsd.org/~tjr/linux32.html

Unfortunately the install process didn't happen exactly like on the page:

# sbin/ldconfig
sbin/ldconfig: Can't open configuration file /etc/ld.so.conf: No such file
or directory

And all Linux commands gave this error:

# ./gcc -v
ELF interpreter /lib/ld-linux.so.2 not found
Abort trap

Ulrik has just sent me some more detailed instructions, so I may give this
another go.

mkdir /compat/linux
cd /compat/linux
tar xvpzf /somewhere/aaa_base-10.0.0-noarch-1.tgz
sh install/doinst.sh
rmdir dev home root tmp var/tmp
tar xvpzf /somewhere/aaa_elflibs-9.2.0-i486-1.tgz
sh install/doinst.sh
tar xvpzf /somewhere/glibc-solibs-2.3.2-i486-6.tgz
sed -e 's,/sbin/ldconfig,/nonexistent,g' -e 's,cp -a,cp -p,g' -i ''
install/doinst.sh
sh install/doinst.sh
tar xvpzf /somewhere/x11-6.7.0-i486-4.tgz
sh install/doinst.sh
echo '/usr/X11R6/lib' >etc/ld.so.conf
brandelf -t Linux sbin/ldconfig
sbin/ldconfig


In general
----------
A lot of Linux ports are giving this message which I suspect may not always
be appropriate:

...is only for i386, and you are running amd64.


hth

Michael


_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/

        _/    _/   _/_/_/             Hopkins Research Ltd
       _/    _/   _/    _/
      _/_/_/_/   _/_/_/          http://www.hopkins-research.com/
     _/    _/   _/   _/
    _/    _/   _/     _/               'touch the future'
                   
_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?BE719A37.36B77%michael.hopkins>