FreeBSD has the ability to run Linux binaries, both in a.out and ELF formats. To do this you have to take the following three steps:
/etc/rc.conf
file and change
linux_enable="NO"to
linux_enable="YES"and reboot. Another way to load the Linux binary support is to execute the command
/usr/bin/linux
. This way you don't have to reboot, and you
don't always have the Linux binary support loaded (i.e. you save memory.)
Remember to add the line
options COMPAT_LINUXto the FreeBSD kernel config file if you build a new FreeBSD kernel.
linux_lib-2.4.tgz
(newer versions might be
available.)
Run the following command to install the package:
pkg_add <path_to_package>/linux_lib-2.4.tgz<path_to_package> is the directory where the package is stored. You may also load it off the net by:
pkg_add ftp://ftp.freebsd.org/pub/FreeBSD/packages-stable/All/linux_lib-2.4.tgzor by re-running
/stand/sysinstall
. Enter ``Configure'', ``Packages''
and use the menus. You should execute the following command if you are running
statically linked Linux binaries:
brandelf -t Linux <name_of_statically_linked_linux_binary>
I have successfully run the Linux versions of Applixware 4.3 and Netscape 3.01 (both ELF format) under FreeBSD 2.2.2 using this method (yes, I know there is a native FreeBSD version of Netscape 4.) The Linux versions of acroread and StarOffice 3 and 4 also work well under FreeBSD. StarOffice 5 depends on native Linux threads and currently do not work under FreeBSD. Read the FreeBSD documentation for more information on this topic.