diff options
author | Nik Clayton <nik@FreeBSD.org> | 1998-11-12 01:26:39 +0000 |
---|---|---|
committer | Nik Clayton <nik@FreeBSD.org> | 1998-11-12 01:26:39 +0000 |
commit | 276c9344d5e936829b18cdc753dbe6cfe5ba9e00 (patch) | |
tree | a84688e694ce3766cfedb4797fedd3fa4f79343e /en_US.ISO8859-1/books/handbook/linuxemu/chapter.sgml | |
parent | 80e2e9e012d88a55af39b9e3bc4983fe390f1173 (diff) | |
download | doc-276c9344d5e936829b18cdc753dbe6cfe5ba9e00.tar.gz doc-276c9344d5e936829b18cdc753dbe6cfe5ba9e00.zip |
Merged in the following changes. This was done by taking diffs between the
tags LINUXDOC_2_DOCBOOK_START and LINUXDOC_2_DOCBOOK from doc/handbook/.
Note that the LINUXDOC_2_DOCBOOK tag is not necessarily at the HEAD of
the file. So some files won't show changes because changes were applied
after I laid down the LINUXDOC_2_DOCBOOK tag.
Not everything was merged. In some cases, URLs had been shortened;
http://www.freebsd.org/docproj/
becomes
../docproj/
This is a mistake, since users browsing the Handbook on their own machine
can't be expected to have links like this work. Of course, for mirrors,
they'll end up pointing back to the main site. For the mean time, do
nothing -- this will need an entity defined to reference the base URL
of the FreeBSD site, individual mirrors can set this as necessary.
Notice how some files (on the left) are merged to the same file (on
the right). This is because the new Handbook file structure is organised
on DocBook chapter lines.
Files with no revision number in the "From" column didn't exist when I
started the conversion.
File From -> To Merged to files...
---------------------------------------------------------------
anoncvs.sgml -> 1.1 cutting-edge/chapter.sgml
authors.sgml 1.93 -> 1.118 authors.ent
backups.sgml -> 1.4 backups/chapter.sgml
bibliography.sgml 1.33 -> 1.37 bibliography/chapter.sgml
contrib.sgml 1.274 -> 1.312 staff/chapter.sgml
ctm.sgml 1.22 -> 1.23 cutting-edge/chapter.sgml
cvsup.sgml 1.36 -> 1.40 cutting-edge/chapter.sgml
disks.sgml -> 1.3 disks/chapter.sgml
eresources.sgml 1.39 -> 1.50 eresources/chapter.sgml
firewalls.sgml 1.19 -> 1.20 security/chapter.sgml
handbook.sgml 1.83 -> 1.91 handbook.sgml
history.sgml 1.24 -> 1.25 introduction/chapter.sgml
install.sgml 1.65 -> 1.67 install/chapter.sgml
isdn.sgml 1.12 -> 1.15 advanced-networking/chapter.sgml
kerberos.sgml 1.12 -> 1.13 security/chapter.sgml
kernelconfig.sgml 1.31 -> 1.32 kernelconfig/chapter.sgml
kerneldebug.sgml 1.17 -> 1.19 kerneldebug/chapter.sgml
linuxemu.sgml 1.22 -> 1.24 linuxemu/chapter.sgml
memoryuse.sgml 1.11 -> 1.12 internals/chapter.sgml
mirrors.sgml 1.80 -> 1.92 mirrors/chapter.sgml
nutshell.sgml 1.14 -> 1.15 introduction/chapter.sgml
pgpkeys.sgml 1.25 -> 1.28 pgpkeys/chapter.sgml
policies.sgml 1.16 -> 1.18 policies/chapter.sgml
porting.sgml 1.93 -> 1.112 contrib/chapter.sgml
ports.sgml 1.29 -> 1.31 ports/chapter.sgml
printing.sgml 1.21 -> 1.22 printing/chapter.sgml
relnotes.sgml 1.24 -> 1.28 introduction/chapter.sgml [1]
submitters.sgml 1.161 -> 1.246 contrib/chapter.sgml
synching.sgml 1.12 -> 1.13 cutting-edge/chapter.sgml
userppp.sgml 1.28 -> 1.30 ppp-and-slip/chapter.sgml
[1] A chunk of relnotes.sgml is in an IGNORED marked section. Why?
Submitted by: A bunch (~ 50%) of merging done by Charles A. Wimmer
(cawimm@FreeBSD.ORG), rest by Nik.
Notes
Notes:
svn path=/head/; revision=3793
Diffstat (limited to 'en_US.ISO8859-1/books/handbook/linuxemu/chapter.sgml')
-rw-r--r-- | en_US.ISO8859-1/books/handbook/linuxemu/chapter.sgml | 56 |
1 files changed, 39 insertions, 17 deletions
diff --git a/en_US.ISO8859-1/books/handbook/linuxemu/chapter.sgml b/en_US.ISO8859-1/books/handbook/linuxemu/chapter.sgml index 426491a079..187301676e 100644 --- a/en_US.ISO8859-1/books/handbook/linuxemu/chapter.sgml +++ b/en_US.ISO8859-1/books/handbook/linuxemu/chapter.sgml @@ -11,7 +11,7 @@ possible to run a large fraction of Linux binaries in both a.out and ELF format. The linux emulation in the 2.1-STABLE branch is capable of running Linux DOOM and Mathematica; the version present in - FreeBSD-2.2-RELEASE is vastly more capable and runs all these as + &rel.current;-RELEASE is vastly more capable and runs all these as well as Quake, Abuse, IDL, netrek for Linux and a whole host of other programs.</para> @@ -22,11 +22,6 @@ filesystem) or i386-specific calls, such as enabling virtual 8086 mode.</para> - <para>To tell whether your kernel is configured for Linux - compatibility simply run any Linux binary. If it prints the error - message <errorname>linux-executable: Exec format error. Wrong Architecture.</errorname> then you do not have linux compatibility support - and you need to configure and install a new kernel.</para> - <para>Depending on which version of FreeBSD you are running, how you get Linux-emulation up will vary slightly:</para> @@ -180,7 +175,7 @@ options LINUX</programlisting> just grab the linux_lib port:</para> <informalexample> - <screen>&prompt.root; <userinput>cd /usr/ports-current/emulators/linux_lib</userinput> + <screen>&prompt.root; <userinput>cd /usr/ports/emulators/linux_lib</userinput> &prompt.root; <userinput>make all install</userinput></screen> </informalexample> @@ -188,10 +183,9 @@ options LINUX</programlisting> the mail archives <!-- smiley -->:-) seems to hold that Linux emulation works best with linux binaries linked against the ZMAGIC libraries; QMAGIC libraries (such as those used in Slackware V2.0) may tend - to give the Linuxulator heartburn. As of this writing (March - 1996) ELF emulation is still in the formulative stages but seems - to work pretty well. Also, expect some programs to complain - about incorrect minor versions. In general this does not seem + to give the Linuxulator heartburn. Also, expect some programs to complain + about incorrect minor versions of the system libraries. In + general, however, this does not seem to be a problem.</para> </sect3> @@ -216,7 +210,7 @@ options LINUX</programlisting> that the Linux <command>ld.so</command> reports.</para> <para>FreeBSD-2.2-RELEASE and later works slightly differently - with respect to <command>/compat/linux</command>. On -CURRENT, all files, not just + with respect to <filename>/compat/linux</filename>: all files, not just libraries, are searched for from the “shadow root” <filename>/compat/linux</filename>.</para> @@ -240,7 +234,7 @@ options LINUX</programlisting> do the necessary installation steps).</para> <para>If you have access to a Linux system, see what shared - libraries it needs, and copy them to your FreeBSD system. + libraries the application needs, and copy them to your FreeBSD system. Example: you have just ftp'ed the Linux binary of Doom. Put it on the Linux system you have access to, and check which shared libraries it needs by running <command>ldd linuxxdoom</command>:</para> @@ -313,7 +307,7 @@ libc.so.4 (DLL Jump 4.5pl26) => /lib/libc.so.4.6.29</screen> <sect3> <title>Configuring the <filename>ld.so</filename> — for FreeBSD - 2.2-RELEASE only</title> + 2.2-RELEASE and later</title> <para>This section applies only to FreeBSD 2.2-RELEASE and later. Those running 2.1-STABLE should skip this section.</para> @@ -424,7 +418,35 @@ libc.so.4 (DLL Jump 4.5pl26) => /lib/libc.so.4.6.29</screen> </sect3> </sect2> - + + <sect2> + <title>Installing Linux ELF binaries</title> + + <para>ELF binaries sometimes require an extra step of + “branding”. If you attempt to run an unbranded ELF binary, + you will get an error message like the following;</para> + + <informalexample> + <screen>&prompt.user; <userinput>./my-linux-elf-binary</userinput> +ELF binary type not known +Abort</screen> + </informalexample> + + <para>To help the FreeBSD kernel distinguish between a FreeBSD ELF + binary from a Linux one, use the <citerefentry> + <refentrytitle>brandelf</refentrytitle> + <manvolnum>1</manvolnum> + </citerefentry> utility.</para> + + <informalexample> + <screen>&prompt.user; <userinput>brandelf -t Linux my-linux-elf-binary</userinput></screen> + </informalexample> + + <para>The GNU toolchain now places the appropriate branding information + into ELF binaries automatically, so you should be needing to do this + step increasingly rarely in future.</para> + </sect2> + <sect2> <title>Configuring the host name resolver</title> @@ -455,7 +477,7 @@ multi on</programlisting> <para>Lastly, those who run 2.1-STABLE need to set an the <envar>RESOLV_HOST_CONF</envar> environment variable so that applications will know how to search the host tables. If you run FreeBSD - 2.2-RELEASE, you can skip this. For the + 2.2-RELEASE or later, you can skip this. For the <filename>/bin/csh</filename> shell use:</para> <informalexample> @@ -507,7 +529,7 @@ multi on</programlisting> </listitem> <listitem> - <para>ftp.demon.co.uk:/pub/linux/distributions</para> + <para>ftp.demon.co.uk:/pub/unix/linux</para> </listitem> <listitem> |