svn commit: r40735 - head/en_US.ISO8859-1/books/handbook/linuxemu
Dru Lavigne
dru at FreeBSD.org
Thu Jan 24 15:03:30 UTC 2013
Author: dru
Date: Thu Jan 24 15:03:30 2013
New Revision: 40735
URL: http://svnweb.freebsd.org/changeset/doc/40735
Log:
White space fix only. Translators can ignore.
Approved by: gjb (mentor)
Modified:
head/en_US.ISO8859-1/books/handbook/linuxemu/chapter.xml
Modified: head/en_US.ISO8859-1/books/handbook/linuxemu/chapter.xml
==============================================================================
--- head/en_US.ISO8859-1/books/handbook/linuxemu/chapter.xml Thu Jan 24 14:57:42 2013 (r40734)
+++ head/en_US.ISO8859-1/books/handbook/linuxemu/chapter.xml Thu Jan 24 15:03:30 2013 (r40735)
@@ -32,7 +32,9 @@
<sect1 id="linuxemu-synopsis">
<title>Synopsis</title>
- <indexterm><primary>Linux binary compatibility</primary></indexterm>
+
+ <indexterm><primary>Linux binary
+ compatibility</primary></indexterm>
<indexterm>
<primary>binary compatibility</primary>
<secondary>Linux</secondary>
@@ -41,52 +43,57 @@
<para>FreeBSD provides binary compatibility with several other
&unix; like operating systems, including Linux. At this point,
you may be asking yourself why exactly, does
- FreeBSD need to be able to run Linux binaries? The answer to that
- question is quite simple. Many companies and developers develop
- only for Linux, since it is the latest <quote>hot thing</quote> in
- the computing world. That leaves the rest of us FreeBSD users
- bugging these same companies and developers to put out native
- FreeBSD versions of their applications. The problem is, that most
- of these companies do not really realize how many people would use
- their product if there were FreeBSD versions too, and most continue
- to only develop for Linux. So what is a FreeBSD user to do? This
- is where the Linux binary compatibility of FreeBSD comes into
- play.</para>
-
- <para>In a nutshell, the compatibility allows FreeBSD users to run
- about 90% of all Linux applications without modification. This
- includes applications such as <application>&staroffice;</application>,
- the Linux version of <application>&netscape;</application>,
+ FreeBSD need to be able to run Linux binaries? The answer to
+ that question is quite simple. Many companies and developers
+ develop only for Linux, since it is the latest <quote>hot
+ thing</quote> in the computing world. That leaves the rest
+ of us FreeBSD users bugging these same companies and developers
+ to put out native FreeBSD versions of their applications. The
+ problem is, that most of these companies do not really realize
+ how many people would use their product if there were FreeBSD
+ versions too, and most continue to only develop for Linux.
+ So what is a FreeBSD user to do? This is where the Linux binary
+ compatibility of FreeBSD comes into play.</para>
+
+ <para>In a nutshell, the compatibility allows FreeBSD users to
+ run about 90% of all Linux applications without modification.
+ This includes applications such as
+ <application>&staroffice;</application>, the Linux version of
+ <application>&netscape;</application>,
<application>&adobe; &acrobat;</application>,
<application>&realplayer;</application>,
<application>&oracle;</application>,
- <application>&wordperfect;</application>, <application>Doom</application>,
+ <application>&wordperfect;</application>,
+ <application>Doom</application>,
<application>Quake</application>, and more. It is also reported
- that in some situations, Linux binaries perform better on FreeBSD
- than they do under Linux.</para>
+ that in some situations, Linux binaries perform better on
+ FreeBSD than they do under Linux.</para>
<para>There are, however, some Linux-specific operating system
- features that are not supported under FreeBSD. Linux binaries will
- not work on FreeBSD if they overly use &i386; specific
+ features that are not supported under FreeBSD. Linux binaries
+ will not work on FreeBSD if they overly use &i386; specific
calls, such as enabling virtual 8086 mode.</para>
<para>After reading this chapter, you will know:</para>
<itemizedlist>
<listitem>
- <para>How to enable Linux binary compatibility on your system.</para>
+ <para>How to enable Linux binary compatibility on your
+ system.</para>
</listitem>
<listitem>
<para>How to install additional Linux shared
libraries.</para>
- </listitem>
+ </listitem>
<listitem>
- <para>How to install Linux applications on your FreeBSD system.</para>
+ <para>How to install Linux applications on your FreeBSD
+ system.</para>
</listitem>
<listitem>
- <para>The implementation details of Linux compatibility in FreeBSD.</para>
+ <para>The implementation details of Linux compatibility in
+ FreeBSD.</para>
</listitem>
</itemizedlist>
@@ -95,7 +102,7 @@
<itemizedlist>
<listitem>
<para>Know how to install additional third-party
- software (<xref linkend="ports"/>).</para>
+ software (<xref linkend="ports"/>).</para>
</listitem>
</itemizedlist>
@@ -104,7 +111,8 @@
<sect1 id="linuxemu-lbc-install">
<title>Installation</title>
- <indexterm><primary>KLD (kernel loadable object)</primary></indexterm>
+ <indexterm><primary>KLD (kernel loadable
+ object)</primary></indexterm>
<para>Linux binary compatibility is not turned on by default. The
easiest way to enable this functionality is to load the
@@ -127,19 +135,22 @@
Id Refs Address Size Name
1 2 0xc0100000 16bdb8 kernel
7 1 0xc24db000 d000 linux.ko</screen>
+
<indexterm>
<primary>kernel options</primary>
<secondary>COMPAT_LINUX</secondary>
</indexterm>
- <para>If for some reason you do not want to or cannot load the KLD,
- then you may statically link Linux binary compatibility into the kernel
- by adding <literal>options COMPAT_LINUX</literal> to your kernel
- configuration file. Then install your new kernel as described in
+ <para>If for some reason you do not want to or cannot load the
+ KLD, then you may statically link Linux binary compatibility
+ into the kernel by adding <literal>options
+ COMPAT_LINUX</literal> to your kernel configuration file.
+ Then install your new kernel as described in
<xref linkend="kernelconfig"/>.</para>
<sect2>
<title>Installing Linux Runtime Libraries</title>
+
<indexterm>
<primary>Linux</primary>
<secondary>installing Linux libraries</secondary>
@@ -150,36 +161,38 @@ Id Refs Address Size Name
by installing them <link
linkend="linuxemu-libs-manually">manually</link>.</para>
- <sect3 id="linuxemu-libs-port">
- <title>Installing Using the linux_base Port</title>
- <indexterm><primary>Ports Collection</primary></indexterm>
-
- <para>This is by far the easiest method to use when installing the
- runtime libraries. It is just like installing any other port
- from the <link linkend="ports">Ports Collection</link>:</para>
+ <sect3 id="linuxemu-libs-port">
+ <title>Installing Using the linux_base Port</title>
- <screen>&prompt.root; <userinput>cd /usr/ports/emulators/linux_base-f10</userinput>
+ <indexterm><primary>Ports Collection</primary></indexterm>
+
+ <para>This is by far the easiest method to use when installing
+ the runtime libraries. It is just like installing any other
+ port from the <link linkend="ports">Ports
+ Collection</link>:</para>
+
+ <screen>&prompt.root; <userinput>cd /usr/ports/emulators/linux_base-f10</userinput>
&prompt.root; <userinput>make install distclean</userinput></screen>
<note>
<para>On &os; systems prior to &os; 8.0, you will have
to use the <filename
- role="package">emulators/linux_base-fc4</filename> port
+ role="package">emulators/linux_base-fc4</filename> port
instead of <filename
- role="package">emulators/linux_base-f10</filename>.</para>
+ role="package">emulators/linux_base-f10</filename>.</para>
</note>
<para>You should now have working Linux binary compatibility.
- Some programs may complain about incorrect minor versions of the
- system libraries. In general, however, this does not seem to be
- a problem.</para>
+ Some programs may complain about incorrect minor versions
+ of the system libraries. In general, however, this does
+ not seem to be a problem.</para>
<note><para>There may be multiple versions of the <filename
- role="package">emulators/linux_base</filename> port available,
- corresponding to different versions of various Linux distributions.
- You should install the port most closely resembling the
- requirements of the Linux applications you would like to
- install.</para></note>
+ role="package">emulators/linux_base</filename> port
+ available, corresponding to different versions of various
+ Linux distributions. You should install the port most
+ closely resembling the requirements of the Linux
+ applications you would like to install.</para></note>
</sect3>
@@ -187,48 +200,52 @@ Id Refs Address Size Name
<title>Installing Libraries Manually</title>
<para>If you do not have the <quote>ports</quote> collection
- installed, you can install the libraries by hand instead. You
- will need the Linux shared libraries that the program depends on
- and the runtime linker. Also, you will need to create a
- <quote>shadow root</quote> directory,
- <filename>/compat/linux</filename>, for Linux libraries on your
- FreeBSD system. Any shared libraries opened by Linux programs
- run under FreeBSD will look in this tree first. So, if a Linux
- program loads, for example, <filename>/lib/libc.so</filename>,
- FreeBSD will first try to open
- <filename>/compat/linux/lib/libc.so</filename>, and if that does
- not exist, it will then try <filename>/lib/libc.so</filename>.
- Shared libraries should be installed in the shadow tree
+ installed, you can install the libraries by hand instead.
+ You will need the Linux shared libraries that the program
+ depends on and the runtime linker. Also, you will need to
+ create a <quote>shadow root</quote> directory,
+ <filename>/compat/linux</filename>, for Linux libraries
+ on your FreeBSD system. Any shared libraries opened by
+ Linux programs run under FreeBSD will look in this tree
+ first. So, if a Linux program loads, for example,
+ <filename>/lib/libc.so</filename>, FreeBSD will first try
+ to open <filename>/compat/linux/lib/libc.so</filename>,
+ and if that does not exist, it will then try
+ <filename>/lib/libc.so</filename>. Shared libraries should
+ be installed in the shadow tree
<filename>/compat/linux/lib</filename> rather than the paths
that the Linux <command>ld.so</command> reports.</para>
- <para>Generally, you will need to look for the shared libraries
- that Linux binaries depend on only the first few times that you
- install a Linux program on your FreeBSD system. After a while,
- you will have a sufficient set of Linux shared libraries on your
- system to be able to run newly imported Linux binaries without
- any extra work.</para>
+ <para>Generally, you will need to look for the shared
+ libraries that Linux binaries depend on only the first few
+ times that you install a Linux program on your FreeBSD
+ system. After a while, you will have a sufficient set of
+ Linux shared libraries on your system to be able to run
+ newly imported Linux binaries without any extra work.</para>
</sect3>
<sect3>
<title>How to Install Additional Shared Libraries</title>
+
<indexterm><primary>shared libraries</primary></indexterm>
- <para>What if you install the <filename>linux_base</filename> port
- and your application still complains about missing shared
- libraries? How do you know which shared libraries Linux
- binaries need, and where to get them? Basically, there are 2
- possibilities (when following these instructions you will need
- to be <username>root</username> on your FreeBSD system).</para>
+ <para>What if you install the <filename>linux_base</filename>
+ port and your application still complains about missing
+ shared libraries? How do you know which shared libraries
+ Linux binaries need, and where to get them? Basically,
+ there are 2 possibilities (when following these instructions
+ you will need to be <username>root</username> on your
+ FreeBSD system).</para>
<para>If you have access to a Linux system, see what shared
- libraries the application needs, and copy them to your FreeBSD
- system. Look at the following example:</para>
+ libraries the application needs, and copy them to your
+ FreeBSD system. Look at the following example:</para>
<informalexample>
- <para>Let us assume you used FTP to get the Linux binary of
- <application>Doom</application>, and put it on a Linux system you have access to. You
- then can check which shared libraries it needs by running
+ <para>Let us assume you used FTP to get the Linux binary
+ of <application>Doom</application>, and put it on a Linux
+ system you have access to. You then can check which
+ shared libraries it needs by running
<command>ldd linuxdoom</command>, like so:</para>
<screen>&prompt.user; <userinput>ldd linuxdoom</userinput>
@@ -237,10 +254,11 @@ libX11.so.3 (DLL Jump 3.1) => /usr/X1
libc.so.4 (DLL Jump 4.5pl26) => /lib/libc.so.4.6.29</screen>
<indexterm><primary>symbolic links</primary></indexterm>
- <para>You would need to get all the files from the last column,
- and put them under <filename>/compat/linux</filename>, with
- the names in the first column as symbolic links pointing to
- them. This means you eventually have these files on your
+ <para>You would need to get all the files from the last
+ column, and put them under
+ <filename>/compat/linux</filename>, with the names in
+ the first column as symbolic links pointing to them.
+ This means you eventually have these files on your
FreeBSD system:</para>
<screen>/compat/linux/usr/X11/lib/libXt.so.3.1.0
@@ -252,15 +270,16 @@ libc.so.4 (DLL Jump 4.5pl26) => /lib/
<blockquote>
<note>
- <para>Note that if you already have a Linux shared library
- with a matching major revision number to the first column
- of the <command>ldd</command> output, you will not need to
- copy the file named in the last column to your system, the
- one you already have should work. It is advisable to copy
- the shared library anyway if it is a newer version,
- though. You can remove the old one, as long as you make
- the symbolic link point to the new one. So, if you have
- these libraries on your system:</para>
+ <para>Note that if you already have a Linux shared
+ library with a matching major revision number to the
+ first column of the <command>ldd</command> output,
+ you will not need to copy the file named in the last
+ column to your system, the one you already have should
+ work. It is advisable to copy the shared library
+ anyway if it is a newer version, though. You can
+ remove the old one, as long as you make the symbolic
+ link point to the new one. So, if you have these
+ libraries on your system:</para>
<screen>/compat/linux/lib/libc.so.4.6.27
/compat/linux/lib/libc.so.4 -> libc.so.4.6.27</screen>
@@ -271,13 +290,13 @@ libc.so.4 (DLL Jump 4.5pl26) => /lib/
<screen>libc.so.4 (DLL Jump 4.5pl26) -> libc.so.4.6.29</screen>
- <para>If it is only one or two versions out of date in the
- trailing digit then do not worry about copying
- <filename>/lib/libc.so.4.6.29</filename> too, because the
- program should work fine with the slightly older version.
- However, if you like, you can decide to replace the
- <filename>libc.so</filename> anyway, and that should leave
- you with:</para>
+ <para>If it is only one or two versions out of date
+ in the trailing digit then do not worry about copying
+ <filename>/lib/libc.so.4.6.29</filename> too, because
+ the program should work fine with the slightly older
+ version. However, if you like, you can decide to
+ replace the <filename>libc.so</filename> anyway, and
+ that should leave you with:</para>
<screen>/compat/linux/lib/libc.so.4.6.29
/compat/linux/lib/libc.so.4 -> libc.so.4.6.29</screen>
@@ -287,10 +306,10 @@ libc.so.4 (DLL Jump 4.5pl26) => /lib/
<blockquote>
<note>
<para>The symbolic link mechanism is
- <emphasis>only</emphasis> needed for Linux binaries. The
- FreeBSD runtime linker takes care of looking for matching
- major revision numbers itself and you do not need to worry
- about it.</para>
+ <emphasis>only</emphasis> needed for Linux binaries.
+ The FreeBSD runtime linker takes care of looking for
+ matching major revision numbers itself and you do not
+ need to worry about it.</para>
</note>
</blockquote>
</informalexample>
@@ -299,21 +318,23 @@ libc.so.4 (DLL Jump 4.5pl26) => /lib/
<sect2>
<title>Installing Linux ELF Binaries</title>
+
<indexterm>
<primary>Linux</primary>
<secondary>ELF binaries</secondary>
</indexterm>
<para>ELF binaries sometimes require an extra step of
- <quote>branding</quote>. If you attempt to run an unbranded ELF
- binary, you will get an error message like the following:</para>
+ <quote>branding</quote>. If you attempt to run an unbranded
+ ELF binary, you will get an error message like the
+ following:</para>
<screen>&prompt.user; <userinput>./my-linux-elf-binary</userinput>
ELF binary type not known
Abort</screen>
- <para>To help the FreeBSD kernel distinguish between a FreeBSD ELF
- binary and a Linux binary, use the &man.brandelf.1;
+ <para>To help the FreeBSD kernel distinguish between a FreeBSD
+ ELF binary and a Linux binary, use the &man.brandelf.1;
utility.</para>
<screen>&prompt.user; <userinput>brandelf -t Linux my-linux-elf-binary</userinput></screen>
@@ -327,19 +348,19 @@ Abort</screen>
<sect2>
<title>Installing a Random Linux RPM Based Application</title>
- <para>FreeBSD has its own package database and it is used to track
- all ports (&linux; ports as well). So the &linux; RPM database is not
- used (not supported).</para>
+ <para>FreeBSD has its own package database and it is used to
+ track all ports (&linux; ports as well). So the &linux; RPM
+ database is not used (not supported).</para>
- <para>However if you need to install a random &linux; RPM-based
- application it can be achieved by:</para>
+ <para>However if you need to install a random &linux;
+ RPM-based application it can be achieved by:</para>
<screen>&prompt.root; <userinput>cd /compat/linux</userinput>
&prompt.root; <userinput>rpm2cpio -q < /path/to/linux.archive.rpm | cpio -id</userinput></screen>
<para>Then brandelf installed ELF binaries (not libraries!).
- You will not be able to do a clean uninstall, but it may help you
- to do tests.</para>
+ You will not be able to do a clean uninstall, but it may
+ help you to do tests.</para>
</sect2>
<sect2>
@@ -357,14 +378,16 @@ Abort</screen>
<programlisting>order hosts, bind
multi on</programlisting>
- <para>The order here specifies that <filename>/etc/hosts</filename>
- is searched first and DNS is searched second. When
+ <para>The order here specifies that
+ <filename>/etc/hosts</filename> is searched first and DNS
+ is searched second. When
<filename>/compat/linux/etc/host.conf</filename> is not
installed, Linux applications find FreeBSD's
<filename>/etc/host.conf</filename> and complain about the
incompatible FreeBSD syntax. You should remove
- <literal>bind</literal> if you have not configured a name server
- using the <filename>/etc/resolv.conf</filename> file.</para>
+ <literal>bind</literal> if you have not configured a name
+ server using the <filename>/etc/resolv.conf</filename>
+ file.</para>
</sect2>
</sect1>
@@ -389,7 +412,8 @@ multi on</programlisting>
version of <application>&mathematica; 5.X</application> onto
a FreeBSD system.</para>
- <para>The Linux version of <application>&mathematica;</application>
+ <para>The Linux version of
+ <application>&mathematica;</application>
or <application>&mathematica; for Students</application> can
be ordered directly from Wolfram at
<ulink url="http://www.wolfram.com/"></ulink>.</para>
@@ -433,9 +457,10 @@ multi on</programlisting>
<para>The shell scripts that
<application>&mathematica;</application> created during
- installation have to be modified before you can use them. If
- you chose <filename class="directory">/usr/local/bin</filename>
- as the directory to place the
+ installation have to be modified before you can use them.
+ If you chose <filename
+ class="directory">/usr/local/bin</filename> as the directory
+ to place the
<application>&mathematica;</application> executables in, you
will find symlinks in this directory to files called
<filename>math</filename>, <filename>mathematica</filename>,
@@ -472,10 +497,10 @@ done</programlisting>
<application>&mathematica;</application> on different
machines.</para>
- <para>When you register with Wolfram, either by email, phone or fax,
- you will give them the <quote>machine ID</quote> and they will
- respond with a corresponding password consisting of groups of
- numbers.</para>
+ <para>When you register with Wolfram, either by email, phone
+ or fax, you will give them the <quote>machine ID</quote> and
+ they will respond with a corresponding password consisting
+ of groups of numbers.</para>
</sect2>
<sect2>
@@ -483,25 +508,27 @@ done</programlisting>
<para><application>&mathematica;</application> uses some special
fonts to display characters not
- present in any of the standard font sets (integrals, sums, Greek
- letters, etc.). The X protocol requires these fonts to be install
- <emphasis>locally</emphasis>. This means you will have to copy
- these fonts from the CDROM or from a host with
- <application>&mathematica;</application>
- installed to your local machine. These fonts are normally stored
- in <filename>/cdrom/Unix/Files/SystemFiles/Fonts</filename> on the
- CDROM, or
- <filename>/usr/local/mathematica/SystemFiles/Fonts</filename> on
- your hard drive. The actual fonts are in the subdirectories
- <filename>Type1</filename> and <filename>X</filename>. There are
- several ways to use them, as described below.</para>
-
- <para>The first way is to copy them into one of the existing font
- directories in <filename>/usr/X11R6/lib/X11/fonts</filename>.
- This will require editing the <filename>fonts.dir</filename> file,
- adding the font names to it, and changing the number of fonts on
- the first line. Alternatively, you should also just be able to
- run &man.mkfontdir.1; in the directory you have copied
+ present in any of the standard font sets (integrals, sums,
+ Greek letters, etc.). The X protocol requires these fonts
+ to be install <emphasis>locally</emphasis>. This means you
+ will have to copy these fonts from the CDROM or from a host
+ with <application>&mathematica;</application> installed to
+ your local machine. These fonts are normally stored in
+ <filename>/cdrom/Unix/Files/SystemFiles/Fonts</filename> on
+ the CDROM, or
+ <filename>/usr/local/mathematica/SystemFiles/Fonts</filename>
+ on your hard drive. The actual fonts are in the
+ subdirectories <filename>Type1</filename> and
+ <filename>X</filename>. There are several ways to use them,
+ as described below.</para>
+
+ <para>The first way is to copy them into one of the existing
+ font directories in
+ <filename>/usr/X11R6/lib/X11/fonts</filename>. This will
+ require editing the <filename>fonts.dir</filename> file,
+ adding the font names to it, and changing the number of fonts
+ on the first line. Alternatively, you should also just be
+ able to run &man.mkfontdir.1; in the directory you have copied
them to.</para>
<para>The second way to do this is to copy the directories to
@@ -524,14 +551,16 @@ done</programlisting>
&prompt.root; <userinput>xset fp+ /usr/X11R6/lib/X11/fonts/MathType1</userinput>
&prompt.root; <userinput>xset fp rehash</userinput></screen>
- <para>If you are using the <application>&xorg;</application> server, you can have these font
- directories loaded automatically by adding them to your
+ <para>If you are using the <application>&xorg;</application>
+ server, you can have these font directories loaded
+ automatically by adding them to your
<filename>xorg.conf</filename> file.</para>
<indexterm><primary>fonts</primary></indexterm>
- <para>If you <emphasis>do not</emphasis> already have a directory
- called <filename>/usr/X11R6/lib/X11/fonts/Type1</filename>, you
+ <para>If you <emphasis>do not</emphasis> already have a
+ directory called
+ <filename>/usr/X11R6/lib/X11/fonts/Type1</filename>, you
can change the name of the <filename>MathType1</filename>
directory in the example above to
<filename>Type1</filename>.</para>
@@ -564,36 +593,40 @@ done</programlisting>
<secondary><application>Maple</application></secondary>
</indexterm>
- <para><application>&maple;</application> is a commercial mathematics program similar to
- <application>&mathematica;</application>. You must purchase this software from <ulink
- url="http://www.maplesoft.com/"></ulink> and then register there
- for a license file. To install this software on FreeBSD, please
- follow these simple steps.</para>
-
- <procedure>
- <step><para>Execute the <filename>INSTALL</filename> shell
- script from the product distribution. Choose the
- <quote>RedHat</quote> option when prompted by the
- installation program. A typical installation directory
- might be <filename
+ <para><application>&maple;</application> is a commercial
+ mathematics program similar to
+ <application>&mathematica;</application>. You must purchase
+ this software from <ulink
+ url="http://www.maplesoft.com/"></ulink> and then register
+ there for a license file. To install this software on FreeBSD,
+ please follow these simple steps.</para>
+
+ <procedure>
+ <step><para>Execute the <filename>INSTALL</filename> shell
+ script from the product distribution. Choose the
+ <quote>RedHat</quote> option when prompted by the
+ installation program. A typical installation directory
+ might be <filename
class="directory">/usr/local/maple</filename>.</para></step>
- <step><para>If you have not done so, order a license for <application>&maple;</application>
- from Maple Waterloo Software (<ulink url="http://register.maplesoft.com/"></ulink>)
- and copy it to
+ <step><para>If you have not done so, order a license for
+ <application>&maple;</application> from Maple Waterloo
+ Software (<ulink
+ url="http://register.maplesoft.com/"></ulink>) and copy it
+ to
<filename>/usr/local/maple/license/license.dat</filename>.</para></step>
- <step><para>Install the <application>FLEXlm</application>
+ <step><para>Install the <application>FLEXlm</application>
license manager by running the
<filename>INSTALL_LIC</filename> install shell script that
comes with <application>&maple;</application>. Specify the
primary hostname for your machine for the license
server.</para></step>
- <step><para>Patch the
- <filename>/usr/local/maple/bin/maple.system.type</filename>
- file with the following:</para>
-<programlisting> ----- snip ------------------
+ <step><para>Patch the
+ <filename>/usr/local/maple/bin/maple.system.type</filename>
+ file with the following:</para>
+ <programlisting> ----- snip ------------------
*** maple.system.type.orig Sun Jul 8 16:35:33 2001
--- maple.system.type Sun Jul 8 16:35:51 2001
***************
@@ -608,18 +641,19 @@ done</programlisting>
# We have two Linux implementations, one for Red Hat and
----- snip end of patch -----</programlisting>
- <para>Please note that after the <literal>"FreeBSD"|\</literal> no other
- whitespace should be present.</para>
-
- <para>This patch instructs <application>&maple;</application> to
- recognize <quote>FreeBSD</quote> as a type of Linux system.
- The <filename>bin/maple</filename> shell script calls the
- <filename>bin/maple.system.type</filename> shell script
- which in turn calls <command>uname -a</command> to find out the operating
- system name. Depending on the OS name it will find out which
- binaries to use.</para></step>
+ <para>Please note that after the
+ <literal>"FreeBSD"|\</literal> no other whitespace should
+ be present.</para>
+
+ <para>This patch instructs <application>&maple;</application>
+ to recognize <quote>FreeBSD</quote> as a type of Linux
+ system. The <filename>bin/maple</filename> shell script
+ calls the <filename>bin/maple.system.type</filename> shell
+ script which in turn calls <command>uname -a</command> to
+ find out the operating system name. Depending on the OS
+ name it will find out which binaries to use.</para></step>
- <step><para>Start the license server.</para>
+ <step><para>Start the license server.</para>
<para>The following script, installed as
<filename>/usr/local/etc/rc.d/lmgrd.sh</filename> is a
@@ -653,29 +687,34 @@ exit 0
----- snip ------------</programlisting></step>
- <step><para>Test-start <application>&maple;</application>:</para>
- <screen>&prompt.user; <userinput>cd /usr/local/maple/bin</userinput>
+ <step><para>Test-start
+ <application>&maple;</application>:</para>
+
+ <screen>&prompt.user; <userinput>cd /usr/local/maple/bin</userinput>
&prompt.user; <userinput>./xmaple</userinput></screen>
- <para>You should be up and running. Make sure to write
+ <para>You should be up and running. Make sure to write
Maplesoft to let them know you would like a native FreeBSD
version!</para></step>
- </procedure>
+ </procedure>
- <sect2>
- <title>Common Pitfalls</title>
+ <sect2>
+ <title>Common Pitfalls</title>
- <itemizedlist>
- <listitem><para>The <application>FLEXlm</application> license manager can be a difficult
- tool to work with. Additional documentation on the subject
- can be found at <ulink
- url="http://www.globetrotter.com/"></ulink>.</para></listitem>
-
- <listitem><para><command>lmgrd</command> is known to be very picky
- about the license file and to core dump if there are any
- problems. A correct license file should look like this:</para>
+ <itemizedlist>
+ <listitem><para>The <application>FLEXlm</application>
+ license manager can be a difficult tool to work with.
+ Additional documentation on the subject can be found at
+ <ulink
+ url="http://www.globetrotter.com/"></ulink>.</para></listitem>
+
+ <listitem><para><command>lmgrd</command> is known to be very
+ picky about the license file and to core dump if there
+ are any problems. A correct license file should look
+ like this:</para>
-<programlisting># =======================================================
+ <programlisting>#
+=======================================================
# License File for UNIX Installations ("Pointer File")
# =======================================================
SERVER chillig ANY
@@ -687,27 +726,27 @@ FEATURE Maple maplelmg 2000.0831 permane
ISSUED=11-may-2000 NOTICE=" Technische Universitat Wien" \
SN=XXXXXXXXX</programlisting>
- <note><para>Serial number and key 'X''ed out. <hostid>chillig</hostid> is a
- hostname.</para></note>
-
- <para>Editing the license file works as long as you do not
- touch the <quote>FEATURE</quote> line (which is protected by the
- license key).</para></listitem>
- </itemizedlist>
- </sect2>
- </sect1>
+ <note><para>Serial number and key 'X''ed out.
+ <hostid>chillig</hostid> is a hostname.</para></note>
- <sect1 id="linuxemu-matlab">
- <sect1info>
- <authorgroup>
- <author>
- <firstname>Dan</firstname>
- <surname>Pelleg</surname>
- <contrib>Contributed by </contrib>
- </author>
+ <para>Editing the license file works as long as you do not
+ touch the <quote>FEATURE</quote> line (which is protected
+ by the license key).</para></listitem>
+ </itemizedlist>
+ </sect2>
+ </sect1>
+
+ <sect1 id="linuxemu-matlab">
+ <sect1info>
+ <authorgroup>
+ <author>
+ <firstname>Dan</firstname>
+ <surname>Pelleg</surname>
+ <contrib>Contributed by </contrib>
+ </author>
<!-- daniel+handbook at pelleg.org -->
- </authorgroup>
- </sect1info>
+ </authorgroup>
+ </sect1info>
<title>Installing &matlab;</title>
<indexterm>
@@ -721,11 +760,11 @@ FEATURE Maple maplelmg 2000.0831 permane
<application>&java.virtual.machine;</application> (see
<xref linkend="matlab-jre"/>).</para>
- <para>The Linux version of <application>&matlab;</application> can be
- ordered directly from The MathWorks at <ulink
- url="http://www.mathworks.com"></ulink>. Make sure you also get
- the license file or instructions how to create it. While you
- are there, let them know you would like a native &os;
+ <para>The Linux version of <application>&matlab;</application>
+ can be ordered directly from The MathWorks at <ulink
+ url="http://www.mathworks.com"></ulink>. Make sure you also
+ get the license file or instructions how to create it. While
+ you are there, let them know you would like a native &os;
version of their software.</para>
<sect2>
@@ -746,28 +785,31 @@ FEATURE Maple maplelmg 2000.0831 permane
<tip>
<para>The installer is graphical. If you get errors about
not being able to open a display, type
- <command>setenv HOME ~<replaceable>USER</replaceable></command>,
- where <replaceable>USER</replaceable> is the user you did a
- &man.su.1; as.</para>
+ <command>setenv HOME
+ ~<replaceable>USER</replaceable></command>,
+ where <replaceable>USER</replaceable> is the user you
+ did a &man.su.1; as.</para>
</tip>
</step>
<step>
<para>
- When asked for the <application>&matlab;</application> root
- directory, type:
+ When asked for the <application>&matlab;</application>
+ root directory, type:
<userinput>/compat/linux/usr/local/matlab</userinput>.</para>
<tip>
<para>For easier typing on the rest of the installation
process, type this at your shell prompt:
- <command>set MATLAB=/compat/linux/usr/local/matlab</command></para>
+ <command>set
+ MATLAB=/compat/linux/usr/local/matlab</command></para>
</tip>
</step>
<step>
<para>Edit the license file as instructed when
- obtaining the <application>&matlab;</application> license.</para>
+ obtaining the <application>&matlab;</application>
+ license.</para>
<tip>
<para>You can prepare this file in advance using your
@@ -789,9 +831,11 @@ FEATURE Maple maplelmg 2000.0831 permane
<sect2>
<title>License Manager Startup</title>
+
<procedure>
<step>
- <para>Create symlinks for the license manager scripts:</para>
+ <para>Create symlinks for the license manager
+ scripts:</para>
<screen>&prompt.root; <userinput>ln -s $MATLAB/etc/lmboot /usr/local/etc/lmboot_TMW</userinput>
&prompt.root; <userinput>ln -s $MATLAB/etc/lmdown /usr/local/etc/lmdown_TMW</userinput></screen>
@@ -801,9 +845,9 @@ FEATURE Maple maplelmg 2000.0831 permane
<para>Create a startup file at
<filename>/usr/local/etc/rc.d/flexlm.sh</filename>. The
example below is a modified version of the distributed
- <filename>$MATLAB/etc/rc.lm.glnx86</filename>. The changes
- are file locations, and startup of the license manager
- under Linux emulation.</para>
+ <filename>$MATLAB/etc/rc.lm.glnx86</filename>. The
+ changes are file locations, and startup of the license
+ manager under Linux emulation.</para>
<programlisting>#!/bin/sh
case "$1" in
@@ -861,8 +905,7 @@ exit 0</programlisting>
<procedure>
<step>
<para>Place the following startup script in
- <filename>/usr/local/bin/matlab</filename>:
- </para>
+ <filename>/usr/local/bin/matlab</filename>:</para>
<programlisting>#!/bin/sh
/compat/linux/bin/sh /compat/linux/usr/local/matlab/bin/matlab "$@"</programlisting>
@@ -876,9 +919,9 @@ exit 0</programlisting>
<tip>
<para>Depending on your version of
- <filename role="package">emulators/linux_base</filename>, you
- may run into errors when running this script. To avoid that,
- edit the file
+ <filename role="package">emulators/linux_base</filename>,
+ you may run into errors when running this script. To avoid
+ that, edit the file
<filename>/compat/linux/usr/local/matlab/bin/matlab</filename>,
and change the line that says:</para>
@@ -915,14 +958,14 @@ exit 0</programlisting>
your workspace before quitting. If you use either of
them, insert the line above immediately after the
<literal>save</literal> command.</para></tip>
- </step>
+ </step>
- <step>
- <para>Create a file
- <filename>$MATLAB/bin/finish.sh</filename>, which will
- contain the following:</para>
+ <step>
+ <para>Create a file
+ <filename>$MATLAB/bin/finish.sh</filename>, which will
+ contain the following:</para>
- <programlisting>#!/compat/linux/bin/sh
+ <programlisting>#!/compat/linux/bin/sh
(sleep 5; killall -1 matlab_helper) &
exit 0</programlisting>
</step>
@@ -963,49 +1006,61 @@ exit 0</programlisting>
<sect2>
<title>Preface</title>
- <para>This document describes the process of installing <application>&oracle; 8.0.5</application> and
- <application>&oracle; 8.0.5.1 Enterprise Edition</application> for Linux onto a FreeBSD
- machine.</para>
+
+ <para>This document describes the process of installing
+ <application>&oracle; 8.0.5</application> and
+ <application>&oracle; 8.0.5.1 Enterprise Edition</application>
+ for Linux onto a FreeBSD machine.</para>
</sect2>
<sect2>
<title>Installing the Linux Environment</title>
- <para>Make sure you have both <filename role='package'>emulators/linux_base</filename> and
- <filename role='package'>devel/linux_devtools</filename> from the Ports Collection
- installed. If you run into difficulties with these ports,
- you may have to use
- the packages or older versions available in the Ports Collection.</para>
+ <para>Make sure you have both <filename
+ role='package'>emulators/linux_base</filename> and
+ <filename role='package'>devel/linux_devtools</filename>
+ from the Ports Collection installed. If you run into
+ difficulties with these ports, you may have to use the
+ packages or older versions available in the Ports
+ Collection.</para>
<para>If you want to run the intelligent agent, you will
also need to install the Red Hat Tcl package:
- <filename>tcl-8.0.3-20.i386.rpm</filename>. The general command
- for installing packages with the official <application>RPM</application> port (<filename role='package'>archivers/rpm</filename>) is:</para>
+ <filename>tcl-8.0.3-20.i386.rpm</filename>. The general
+ command for installing packages with the official
+ <application>RPM</application> port (<filename
+ role='package'>archivers/rpm</filename>) is:</para>
<screen>&prompt.root; <userinput>rpm -i --ignoreos --root /compat/linux --dbpath /var/lib/rpm <replaceable>package</replaceable></userinput></screen>
- <para>Installation of the <replaceable>package</replaceable> should not generate any errors.</para>
+ <para>Installation of the <replaceable>package</replaceable>
+ should not generate any errors.</para>
</sect2>
<sect2>
<title>Creating the &oracle; Environment</title>
- <para>Before you can install <application>&oracle;</application>, you need to set up a proper
- environment. This document only describes what to do
- <emphasis>specially</emphasis> to run <application>&oracle;</application> for Linux on FreeBSD, not
- what has been described in the <application>&oracle;</application> installation guide.</para>
+ <para>Before you can install
+ <application>&oracle;</application>, you need to set up a
+ proper environment. This document only describes what to do
+ <emphasis>specially</emphasis> to run
+ <application>&oracle;</application> for Linux on FreeBSD, not
+ what has been described in the
+ <application>&oracle;</application> installation guide.</para>
<sect3 id="linuxemu-kernel-tuning">
- <title>Kernel Tuning</title>
+ <title>Kernel Tuning</title>
+
<indexterm><primary>kernel tuning</primary></indexterm>
- <para>As described in the <application>&oracle;</application> installation guide, you need to set
- the maximum size of shared memory. Do not use
- <literal>SHMMAX</literal> under FreeBSD. <literal>SHMMAX</literal>
- is merely calculated out of <literal>SHMMAXPGS</literal> and
+ <para>As described in the <application>&oracle;</application>
+ installation guide, you need to set the maximum size of
+ shared memory. Do not use <literal>SHMMAX</literal> under
+ FreeBSD. <literal>SHMMAX</literal> is merely calculated
+ out of <literal>SHMMAXPGS</literal> and
<literal>PGSIZE</literal>. Therefore define
- <literal>SHMMAXPGS</literal>. All other options can be used as
- described in the guide. For example:</para>
+ <literal>SHMMAXPGS</literal>. All other options can be
+ used as described in the guide. For example:</para>
<programlisting>options SHMMAXPGS=10000
options SHMMNI=100
@@ -1014,38 +1069,43 @@ options SEMMNS=200
options SEMMNI=70
options SEMMSL=61</programlisting>
- <para>Set these options to suit your intended use of <application>&oracle;</application>.</para>
+ <para>Set these options to suit your intended use of
+ <application>&oracle;</application>.</para>
- <para>Also, make sure you have the following options in your kernel
- configuration file:</para>
+ <para>Also, make sure you have the following options in your
+ kernel configuration file:</para>
-<programlisting>options SYSVSHM #SysV shared memory
+ <programlisting>options SYSVSHM #SysV shared memory
options SYSVSEM #SysV semaphores
options SYSVMSG #SysV interprocess communication</programlisting>
</sect3>
<sect3 id="linuxemu-oracle-account">
- <title>&oracle; Account</title>
+ <title>&oracle; Account</title>
- <para>Create an <username>oracle</username> account just as you would create any other
- account. The <username>oracle</username> account is special only that you need to give
- it a Linux shell. Add <literal>/compat/linux/bin/bash</literal> to
- <filename>/etc/shells</filename> and set the shell for the <username>oracle</username>
- account to <filename>/compat/linux/bin/bash</filename>.</para>
+ <para>Create an <username>oracle</username> account just as
+ you would create any other account. The
+ <username>oracle</username> account is special only that
+ you need to give it a Linux shell. Add
+ <literal>/compat/linux/bin/bash</literal> to
+ <filename>/etc/shells</filename> and set the shell for
+ the <username>oracle</username> account to
+ <filename>/compat/linux/bin/bash</filename>.</para>
</sect3>
<sect3 id="linuxemu-environment">
- <title>Environment</title>
+ <title>Environment</title>
- <para>Besides the normal <application>&oracle;</application> variables, such as
- <envar>ORACLE_HOME</envar> and <envar>ORACLE_SID</envar> you must
- set the following environment variables:</para>
+ <para>Besides the normal <application>&oracle;</application>
+ variables, such as <envar>ORACLE_HOME</envar> and
+ <envar>ORACLE_SID</envar> you must set the following
+ environment variables:</para>
<informaltable frame="none" pgwide="1">
<tgroup cols="2">
- <colspec colwidth="1*"/>
- <colspec colwidth="2*"/>
+ <colspec colwidth="1*"/>
+ <colspec colwidth="2*"/>
<thead>
*** DIFF OUTPUT TRUNCATED AT 1000 LINES ***
More information about the svn-doc-head
mailing list