From owner-svn-doc-head@FreeBSD.ORG Tue Feb 26 16:52:43 2013 Return-Path: Delivered-To: svn-doc-head@freebsd.org Received: from mx1.freebsd.org (mx1.FreeBSD.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id AD2AFB11; Tue, 26 Feb 2013 16:52:43 +0000 (UTC) (envelope-from dru@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id 9371DF7C; Tue, 26 Feb 2013 16:52:43 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.5/8.14.5) with ESMTP id r1QGqh8H085520; Tue, 26 Feb 2013 16:52:43 GMT (envelope-from dru@svn.freebsd.org) Received: (from dru@localhost) by svn.freebsd.org (8.14.5/8.14.5/Submit) id r1QGqhPY085519; Tue, 26 Feb 2013 16:52:43 GMT (envelope-from dru@svn.freebsd.org) Message-Id: <201302261652.r1QGqhPY085519@svn.freebsd.org> From: Dru Lavigne Date: Tue, 26 Feb 2013 16:52:43 +0000 (UTC) To: doc-committers@freebsd.org, svn-doc-all@freebsd.org, svn-doc-head@freebsd.org Subject: svn commit: r41051 - head/en_US.ISO8859-1/books/handbook/linuxemu X-SVN-Group: doc-head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-doc-head@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: SVN commit messages for the doc tree for head List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 26 Feb 2013 16:52:43 -0000 Author: dru Date: Tue Feb 26 16:52:43 2013 New Revision: 41051 URL: http://svnweb.freebsd.org/changeset/doc/41051 Log: Initial pass through chapter which does some tightening, modernizing, and fixes "you" and &os;. This chapter still needs a lot of testing and modernization. The ulink/xref tags need further review as well. 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 Tue Feb 26 13:13:15 2013 (r41050) +++ head/en_US.ISO8859-1/books/handbook/linuxemu/chapter.xml Tue Feb 26 16:52:43 2013 (r41051) @@ -28,7 +28,7 @@ - Linux Binary Compatibility + &linux; Binary Compatibility Synopsis @@ -40,58 +40,40 @@ Linux - 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 hot - thing 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. - - In a nutshell, the compatibility allows FreeBSD users to - run about 90% of all Linux applications without modification. - This includes applications such as - &staroffice;, the Linux version of - &adobe; &acrobat;, - &realplayer;, - &oracle;, - Doom, - Quake, and more. It is also reported - that in some situations, Linux binaries perform better on - FreeBSD than they do under Linux. - - 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 + &os; provides binary compatibility with &linux;, allowing + users to install and run &linux; binaries on a &os; system. + Many companies and developers develop only for &linux;, and + binary compatibility allows &os; users to run about 90% of all + &linux; applications without modification. This includes + productivity applications, games, and more. It has even been + reported that, in some situations, &linux; binaries perform + better on &os; than they do on &linux;. + + However, some &linux;-specific operating system features + are not supported under &os;. For example, &linux; binaries + will not work on &os; if they overly use &i386; specific calls, such as enabling virtual 8086 mode. After reading this chapter, you will know: - How to enable Linux binary compatibility on your + How to enable &linux; binary compatibility on a &os; system. - How to install additional Linux shared + How to install additional &linux; shared libraries. - How to install Linux applications on your FreeBSD + How to install &linux; applications on a &os; system. - The implementation details of Linux compatibility in - FreeBSD. + The implementation details of &linux; compatibility in + &os;. @@ -99,8 +81,8 @@ - Know how to install additional third-party - software (). + Know how to install additional + third-party software. @@ -109,25 +91,43 @@ Installation - KLD (kernel loadable - object) + Ports Collection - Linux binary compatibility is not turned on by default. The - easiest way to enable this functionality is to load the - linux KLD object (Kernel LoaDable - object). You can load this module by typing the - following as root: + &linux; libararies are not installed on &os; by default + and &linux; binary compatibility is not enabled by default. + &linux; libraries can be installed using the &os; Ports + Collection. Alternately, &linux; libraries can be installed + manually. + + Using the Ports Collection is by far the easiest way to + install &linux; libraries. On a &os; 8.0 or higher + system, install the following port: - &prompt.root; kldload linux + &prompt.root; cd +/usr/ports/emulators/linux_base-f10 &prompt.root; make install distclean - If you would like Linux compatibility to always be enabled, - then you should add the following line to + + On &os; systems prior to &os; 8.0, instead + install the emulators/linux_base-fc4 + port. + + + Once the port is installed, enable &linux; binary + compatibility by loading the linux + module. Type the following as + root: + + &prompt.root; kldload linux + + In order for &linux; compatibility to always be enabled at + boot time, add the following line to /etc/rc.conf: linux_enable="YES" - The &man.kldstat.8; command can be used to verify that the - KLD is loaded: + To verify that the module is loaded, use + &man.kldstat.8;: &prompt.user; kldstat Id Refs Address Size Name @@ -139,112 +139,59 @@ Id Refs Address Size Name COMPAT_LINUX - 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 options - COMPAT_LINUX to your kernel configuration file. - Then install your new kernel as described in - . - - - Installing Linux Runtime Libraries - - - Linux - installing Linux libraries - - - This can be done one of two ways, either by using the - linux_base port, or - by installing them manually. - - - Installing Using the linux_base Port - - Ports Collection - - This is by far the easiest method to use when installing - the runtime libraries. It is just like installing any other - port from the Ports - Collection: - - &prompt.root; cd /usr/ports/emulators/linux_base-f10 -&prompt.root; make install distclean - - - On &os; systems prior to &os; 8.0, you will have - to use the emulators/linux_base-fc4 port - instead of emulators/linux_base-f10. - - - 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. - - There may be multiple versions of the emulators/linux_base 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. - - - - - Installing Libraries Manually - - If you do not have the ports 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 shadow root directory, - /compat/linux, 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, - /lib/libc.so, FreeBSD will first try - to open /compat/linux/lib/libc.so, - and if that does not exist, it will then try - /lib/libc.so. Shared libraries should - be installed in the shadow tree - /compat/linux/lib rather than the paths - that the Linux ld.so reports. - - 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. - + Users who prefer to statically link &linux; binary + compatibility into the kernel should add options + COMPAT_LINUX to the custom kernel configuration + file. Compile and install the new kernel as described in . + + + Installing Libraries Manually + + While using the Ports Collection is recommended, &linux; + libraries can be installed manually. The &linux; shared + libraries required by a program and the runtime linker + should be copied to /compat/linux. Any shared + libraries opened by &linux; programs run under &os; will + look in this directory first. For example, if a &linux; + program loads /lib/libc.so, &os; will + first try to open + /compat/linux/lib/libc.so, and if that + does not exist, it will then try + /lib/libc.so. Shared libraries should + be installed to /compat/linux/lib rather than + to the paths that the &linux; ld.so + reports. + + Generally, one will need to look for the shared + libraries that &linux; binaries depend on only the first few + times that a &linux; program is installed on &os;. After a + while, there will be a sufficient set of &linux; shared + libraries on the system to be able to run newly imported + &linux; binaries without any extra work. How to Install Additional Shared Libraries shared libraries - What if you install the linux_base - 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 root on your - FreeBSD system). - - 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: + If the linux_base port is installed + and an application still complains about missing shared + libraries, there are two methods root + can use to determine which shared libraries the &linux; + binaries need. + + If a &linux; system is available, determine which shared + libraries the application needs, and copy them to the &os; + system. - Let us assume you used FTP to get the Linux binary - of Doom, and put it on a Linux - system you have access to. You then can check which - shared libraries it needs by running - ldd linuxdoom, like so: + In this example, FTP was used to download the &linux; + binary of Doom on a &linux; + system . To check which shared libraries it needs, run + ldd linuxdoom: &prompt.user; ldd linuxdoom libXt.so.3 (DLL Jump 3.1) => /usr/X11/lib/libXt.so.3.1.0 @@ -252,12 +199,11 @@ libX11.so.3 (DLL Jump 3.1) => /usr/X1 libc.so.4 (DLL Jump 4.5pl26) => /lib/libc.so.4.6.29 symbolic links - You would need to get all the files from the last - column, and put them under - /compat/linux, with the names in - the first column as symbolic links pointing to them. - This means you eventually have these files on your - FreeBSD system: + Copy all the files in the last column into + /compat/linux on + the &os; system, with the names in the first column as + symbolic links pointing to them. This example will result + in the following files on the &os; system: /compat/linux/usr/X11/lib/libXt.so.3.1.0 /compat/linux/usr/X11/lib/libXt.so.3 -> libXt.so.3.1.0 @@ -268,33 +214,31 @@ libc.so.4 (DLL Jump 4.5pl26) => /lib/
- Note that if you already have a Linux shared - library with a matching major revision number to the - first column of the ldd 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: + If a &linux; shared library already exists with a + matching major revision number to the first column of + the ldd output, it does not need to + be copied to the file named in the last column, as the + existing library should work. It is advisable to copy + the shared library if it is a newer version, though. + The old one can be removed, as long as the symbolic + link points to the new one. For example, these + libraries exist on the system: /compat/linux/lib/libc.so.4.6.27 /compat/linux/lib/libc.so.4 -> libc.so.4.6.27 - and you find a new binary that claims to require a - later version according to the output of + and a binary claims to require a later version + according to the output of ldd: libc.so.4 (DLL Jump 4.5pl26) -> libc.so.4.6.29 If it is only one or two versions out of date - in the trailing digit then do not worry about copying - /lib/libc.so.4.6.29 too, because + in the trailing digit, do not worry about copying + /lib/libc.so.4.6.29, because the program should work fine with the slightly older - version. However, if you like, you can decide to - replace the libc.so anyway, and - that should leave you with: + version. However, it is safe to replace the + libc.so: /compat/linux/lib/libc.so.4.6.29 /compat/linux/lib/libc.so.4 -> libc.so.4.6.29 @@ -304,10 +248,9 @@ libc.so.4 (DLL Jump 4.5pl26) => /lib/
The symbolic link mechanism is - only 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. + only needed for &linux; binaries + as the &os; runtime linker takes care of looking for + matching major revision numbers.
@@ -315,7 +258,7 @@ libc.so.4 (DLL Jump 4.5pl26) => /lib/ - Installing Linux ELF Binaries + Installing &linux; ELF Binaries Linux @@ -323,69 +266,71 @@ libc.so.4 (DLL Jump 4.5pl26) => /lib/ 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 + branding. If an unbranded ELF binary is + executed, it will generate an error message like the following: &prompt.user; ./my-linux-elf-binary ELF binary type not known Abort - To help the FreeBSD kernel distinguish between a FreeBSD - ELF binary and a Linux binary, use the &man.brandelf.1; - utility. + To help the &os; kernel distinguish between a &os; + ELF binary and a &linux; binary, use &man.brandelf.1;: &prompt.user; brandelf -t Linux my-linux-elf-binary GNU toolchain - The GNU toolchain now places the appropriate branding - information into ELF binaries automatically, so this step - should become increasingly unnecessary in the future. + Since the GNU toolchain places the appropriate branding + information into ELF binaries automatically, this step is + usually not necessary. - Installing a Random Linux RPM Based Application - - 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). + Installing a &linux; RPM Based Application - However if you need to install a random &linux; - RPM-based application it can be achieved by: + &os; uses its own package database to track all software + installed from the Ports Collection. However, the &linux; RPM + database is not supported. + + In order to install a &linux; RPM-based application, first + install the archivers/rpm2cpio package or + port. Once installed, root can use this + command to install a .rpm as + follows: &prompt.root; cd /compat/linux &prompt.root; rpm2cpio -q < /path/to/linux.archive.rpm | cpio -id - 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. + If necessary, brandelf the installed + ELF binaries, but not the libraries. + Note that this will prevent a clean uninstall. Configuring the Hostname Resolver - If DNS does not work or you get this message: + If DNS does not work or this error appears: resolv+: "bind" is an invalid keyword resolv+: "hosts" is an invalid keyword - You will need to configure a - /compat/linux/etc/host.conf file - containing: + Configure + /compat/linux/etc/host.conf as + follows: order hosts, bind multi on - The order here specifies that + This order specifies that /etc/hosts is searched first and DNS is searched second. When - /compat/linux/etc/host.conf is not - installed, Linux applications find FreeBSD's + /compat/linux/etc/host.conf does not + exist, &linux; applications use /etc/host.conf and complain about the - incompatible FreeBSD syntax. You should remove - bind if you have not configured a name - server using the /etc/resolv.conf - file. + incompatible &os; syntax. Remove + bind if a name server is not configured + using /etc/resolv.conf. @@ -406,47 +351,46 @@ multi on Mathematica - This document describes the process of installing the Linux - version of &mathematica; 5.X onto - a FreeBSD system. - - The Linux version of - &mathematica; - or &mathematica; for Students can - be ordered directly from Wolfram at - . + This section describes the process of installing the + &linux; version of &mathematica; 5.X + onto a &os; system. &mathematica; + is a commercial, computational software program used in + scientific, engineering, and mathematical fields. It is + available from Wolfram + Research. Running the &mathematica; Installer - First, you have to tell &os; that - &mathematica;'s Linux - binaries use the Linux ABI. The easiest way to do so is to - set the default ELF brand - to Linux for all unbranded binaries with the command: + First, tell &os; that + &mathematica;'s &linux; + binaries use the &linux; Application Binary Interface + ABI. The easiest way to do this is to + set the default ELF brand to &linux; for all unbranded + binaries with the command: &prompt.root; sysctl kern.fallback_elf_brand=3 - This will make &os; assume that unbranded ELF binaries - use the Linux ABI and so you should be able to run the - installer straight from the CDROM. + &os; will now assume that unbranded ELF binaries + use the &linux; ABI which should allow the + installer to execute from the CDROM. - Now, copy the file MathInstaller to - your hard drive: + Copy the MathInstaller to the hard + drive: &prompt.root; mount /cdrom &prompt.root; cp /cdrom/Unix/Installers/Linux/MathInstaller /localdir/ - and in this file, replace /bin/sh in - the first line by /compat/linux/bin/sh. - This makes sure that the installer is executed by the Linux + In this file, replace /bin/sh in + the first line with /compat/linux/bin/sh. + This ensures that the installer is executed by the &linux; version of &man.sh.1;. Next, replace all occurrences of - Linux) by FreeBSD) with - a text editor or the script below in the next section. This - tells the &mathematica; installer, - who calls uname -s to determine the - operating system, to treat &os; as a Linux-like operating - system. Invoking MathInstaller will now + Linux) with FreeBSD) + using a text editor or the script below in the next section. + This tells the &mathematica; + installer, to treat &os; as a &linux;-like operating + system. Invoking MathInstaller should now install &mathematica;. @@ -455,17 +399,17 @@ multi on The shell scripts that &mathematica; created during - installation have to be modified before you can use them. - If you chose /usr/local/bin as the directory - to place the - &mathematica; executables in, you - will find symlinks in this directory to files called - math, mathematica, + for the &mathematica; + executables, symlinks in this directory will point to files + called math, + mathematica, Mathematica, and MathKernel. In each of these, replace - Linux) by FreeBSD) with - a text editor or the following shell script: + Linux) with FreeBSD) + using a text editor or the following shell script: #!/bin/sh cd /usr/local/bin @@ -478,90 +422,85 @@ done - Obtaining Your &mathematica; Password + Obtaining a &mathematica; Password Ethernet MAC address - When you start &mathematica; - for the first time, you will be asked for a password. If you - have not yet obtained a password from Wolfram, run the program + When &mathematica; is started + for the first time, it will ask for a password. If a password + had not yet been obtained from Wolfram Research, run mathinfo in the installation directory to - obtain your machine ID. This machine ID is - based solely on the MAC address of your first Ethernet card, - so you cannot run your copy of - &mathematica; on different - machines. - - When you register with Wolfram, either by email, phone - or fax, you will give them the machine ID and - they will respond with a corresponding password consisting - of groups of numbers. + obtain the machine ID. This machine ID is + based solely on the MAC address of the first Ethernet card, + as the copy of &mathematica; cannot + run on different machines. + + When registering with Wolfram Research, provide the + machine ID and they will respond with a + corresponding password consisting of groups of numbers. Running the &mathematica; Frontend over a Network &mathematica; 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 locally. This means you - will have to copy these fonts from the CDROM or from a host - with &mathematica; installed to - your local machine. These fonts are normally stored in - /cdrom/Unix/Files/SystemFiles/Fonts on - the CDROM, or - /usr/local/mathematica/SystemFiles/Fonts - on your hard drive. The actual fonts are in the - subdirectories Type1 and - X. There are several ways to use them, - as described below. - - The first way is to copy them into one of the existing - font directories in - /usr/X11R6/lib/X11/fonts. This will - require editing the fonts.dir 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. + fonts to display characters not present in any of the standard + font sets. Xorg requires these + fonts to be installed locally. This means that these fonts + need to be copied from the CDROM or from a host with + &mathematica; installed to the + local machine. These fonts are normally stored in + /cdrom/Unix/Files/SystemFiles/Fonts + on the CDROM, or /usr/local/mathematica/SystemFiles/Fonts + on the hard drive. The actual fonts are in the subdirectories + Type1 and + X. There are several + ways to use them, as described below. + + The first way is to copy the fonts into one of the + existing font directories in /usr/local/lib/X11/fonts then + running &man.mkfontdir.1; within the directory containing the + new fonts. The second way to do this is to copy the directories to - /usr/X11R6/lib/X11/fonts: + /usr/local/lib/X11/fonts: - &prompt.root; cd /usr/X11R6/lib/X11/fonts + &prompt.root; cd /usr/local/lib/X11/fonts &prompt.root; mkdir X &prompt.root; mkdir MathType1 &prompt.root; cd /cdrom/Unix/Files/SystemFiles/Fonts -&prompt.root; cp X/* /usr/X11R6/lib/X11/fonts/X -&prompt.root; cp Type1/* /usr/X11R6/lib/X11/fonts/MathType1 -&prompt.root; cd /usr/X11R6/lib/X11/fonts/X +&prompt.root; cp X/* /usr/local/lib/X11/fonts/X +&prompt.root; cp Type1/* /usr/local/lib/X11/fonts/MathType1 +&prompt.root; cd /usr/local/lib/X11/fonts/X &prompt.root; mkfontdir &prompt.root; cd ../MathType1 &prompt.root; mkfontdir - Now add the new font directories to your font path: + Now add the new font directories to the font path: - &prompt.root; xset fp+ /usr/X11R6/lib/X11/fonts/X -&prompt.root; xset fp+ /usr/X11R6/lib/X11/fonts/MathType1 + &prompt.root; xset fp+ /usr/local/lib/X11/fonts/X +&prompt.root; xset fp+ /usr/local/lib/X11/fonts/MathType1 &prompt.root; xset fp rehash - If you are using the &xorg; - server, you can have these font directories loaded - automatically by adding them to your - xorg.conf file. + When using the &xorg; server, + these font directories can be loaded automatically by adding + them to /etc/X11/xorg.conf. fonts - If you do not already have a - directory called - /usr/X11R6/lib/X11/fonts/Type1, you - can change the name of the MathType1 - directory in the example above to - Type1. + If /usr/local/lib/X11/fonts/Type1 + does not already exist, change the name of the MathType1 directory in the + example above to Type1. @@ -593,11 +532,11 @@ done &maple; is a commercial mathematics program similar to - &mathematica;. You must purchase - this software from and then register - there for a license file. To install this software on FreeBSD, - please follow these simple steps. + &mathematica;. This software must be + purchased and licensed from Maplesoft. + To install the &linux; version of this software on &os;, follow + these steps. Execute the INSTALL shell @@ -607,23 +546,25 @@ done might be /usr/local/maple. - If you have not done so, order a license for - &maple; from Maple Waterloo - Software () and copy it - to - /usr/local/maple/license/license.dat. - - Install the FLEXlm - license manager by running the + + Copy the license to + /usr/local/maple/license/license.dat. + + + + Install the FLEXlm license + manager by running the INSTALL_LIC install shell script that - comes with &maple;. Specify the - primary hostname for your machine for the license - server. + comes with &maple;. Specify + the primary hostname for the machine for the license + server. + - Patch the + + Patch /usr/local/maple/bin/maple.system.type - file with the following: + with the following: + ----- snip ------------------ *** maple.system.type.orig Sun Jul 8 16:35:33 2001 --- maple.system.type Sun Jul 8 16:35:51 2001 @@ -639,12 +580,11 @@ done # We have two Linux implementations, one for Red Hat and ----- snip end of patch ----- - Please note that after the - "FreeBSD"|\ no other whitespace should - be present. + Note that no whitespace should be present after + "FreeBSD"|\. This patch instructs &maple; - to recognize FreeBSD as a type of Linux + to recognize &os; as a type of &linux; system. The bin/maple shell script calls the bin/maple.system.type shell script which in turn calls uname -a to @@ -660,7 +600,7 @@ done ----- snip ------------ #! /bin/sh -PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/usr/X11R6/bin +PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin PATH=${PATH}:/usr/local/maple/bin:/usr/local/maple/FLEXlm/UNIX/LINUX export PATH @@ -685,14 +625,14 @@ exit 0 ----- snip ------------ - Test-start - &maple;: + Test that + &maple; starts: &prompt.user; cd /usr/local/maple/bin &prompt.user; ./xmaple - You should be up and running. Make sure to write - Maplesoft to let them know you would like a native FreeBSD + Once everything is working, consider writing + Maplesoft to let them know you would like a native &os; version! @@ -700,14 +640,8 @@ exit 0 Common Pitfalls - The FLEXlm - license manager can be a difficult tool to work with. - Additional documentation on the subject can be found at - . - - lmgrd is known to be very - picky about the license file and to core dump if there + lmgrd is known to be + picky about the license file and to dump core if there are any problems. A correct license file should look like this: @@ -724,12 +658,15 @@ FEATURE Maple maplelmg 2000.0831 permane ISSUED=11-may-2000 NOTICE=" Technische Universitat Wien" \ SN=XXXXXXXXX - Serial number and key 'X''ed out. - chillig is a hostname. - - Editing the license file works as long as you do not - touch the FEATURE line (which is protected - by the license key). + + In this example, the serial number and key were + replaced with X. + chillig is the hostname. + + + Editing the license file works as long as the + FEATURE line is not edited. That line is + protected by the license key. @@ -752,41 +689,38 @@ FEATURE Maple maplelmg 2000.0831 permane MATLAB - This document describes the process of installing the Linux - version of &matlab; version 6.5 onto - a &os; system. It works quite well, with the exception of the - &java.virtual.machine; (see - ). - - The Linux version of &matlab; - can be ordered directly from The MathWorks at . 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. + This document describes the process of installing the + &linux; version of &matlab; version + 6.5 onto a &os; system. It works quite well, + with the exception of the + &java.virtual.machine; which is + described further in . + + The &linux; version of &matlab; + can be purchased and licensed from + MathWorks. Consider letting the company know that + you would like a native &os; version of this software. Installing &matlab; - To install &matlab;, do the - following: + To install &matlab;: - Insert the installation CD and mount it. - Become root, as recommended by the - installation script. To start the installation script - type: + Become root, as recommended by + the installation script. Insert the installation CD and + mount it. To start the installation script type: &prompt.root; /compat/linux/bin/sh /cdrom/install - The installer is graphical. If you get errors about - not being able to open a display, type - setenv HOME + The installer is graphical. If it is not able to + open a display, type setenv HOME ~USER, - where USER is the user you - did a &man.su.1; as. + where USER is the user who + ran &man.su.1;. @@ -798,22 +732,20 @@ FEATURE Maple maplelmg 2000.0831 permane For easier typing on the rest of the installation - process, type this at your shell prompt: - set - MATLAB=/compat/linux/usr/local/matlab + process, type this at the shell prompt: set + MATLAB=/compat/linux/usr/local/matlab. - Edit the license file as instructed when - obtaining the &matlab; - license. + Edit the license file as instructed when obtaining + the &matlab; license. - You can prepare this file in advance using your - favorite editor, and copy it to + This file can be prepared in advance using an + editor, and copied to $MATLAB/license.dat before the - installer asks you to edit it. + installer asks to edit it. @@ -822,9 +754,9 @@ FEATURE Maple maplelmg 2000.0831 permane - At this point your &matlab; + At this point the &matlab; installation is complete. The following steps apply - glue to connect it to your &os; system. + glue to connect it to the &os; system. @@ -840,12 +772,12 @@ FEATURE Maple maplelmg 2000.0831 permane - Create a startup file at + Create a startup file named /usr/local/etc/rc.d/flexlm. The example below is a modified version of the distributed $MATLAB/etc/rc.lm.glnx86. The - changes are file locations, and startup of the license - manager under Linux emulation. *** DIFF OUTPUT TRUNCATED AT 1000 LINES ***