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>