rsc | 4ef9ff6 | 2005-01-14 20:13:27 +0000 | [diff] [blame] | 1 | .TH INSTALL 1 |
| 2 | .SH NAME |
| 3 | install \- notes about Plan 9 from User Space installation |
| 4 | .SH SYNOPSIS |
| 5 | .B |
| 6 | cd \*9; ./INSTALL |
| 7 | .SH DESCRIPTION |
| 8 | To obtain the Plan 9 tree, use CVS |
| 9 | (see |
| 10 | .IR cvs (1)) |
| 11 | or download a tar file from |
| 12 | .HR http://swtch.com/plan9port "" . |
| 13 | .PP |
| 14 | In the root of the tree, run |
| 15 | .BR ./INSTALL . |
| 16 | This script first uses |
| 17 | .IR make (1) |
| 18 | to build the Plan 9 build program |
| 19 | .IR mk (1) |
| 20 | if necessary. |
| 21 | It cleans all previously built object files and libraries out of the tree, |
| 22 | rebuilds and installs everything, and then cleans up. |
| 23 | .PP |
| 24 | There are a few files in tree which have the root |
| 25 | hard-coded in them. |
| 26 | After the build, |
| 27 | .I INSTALL |
| 28 | edits these files to replace the string |
| 29 | .B /usr/local/plan9 |
| 30 | with the name of the root of the current tree. |
| 31 | .PP |
| 32 | Finally, |
| 33 | .I INSTALL |
| 34 | builds an HTML version of the manual and installs it in |
| 35 | .BR \*9/man . |
| 36 | .PP |
| 37 | .I INSTALL |
| 38 | can safely be repeated to rebuild the system from scratch. |
rsc | 3dc1ecc | 2005-01-14 21:09:40 +0000 | [diff] [blame] | 39 | .PP |
| 40 | The system uses different threading implementations on Linux 2.6 and |
| 41 | later kernels than on 2.4 and earlier; |
| 42 | and on FreeBSD 5 and later kernels than on FreeBSD 4 and earlier. |
rsc | b04c42e | 2005-01-17 21:32:55 +0000 | [diff] [blame] | 43 | Running binaries from one class on another will not work. |
| 44 | .PP |
| 45 | Some Linux 2.6 systems (e.g., Gentoo) do not use the new NPTL pthread library |
| 46 | even though the kernel supports them. On these systems, plan9port must |
| 47 | fall back on the threading code intended for Linux 2.4. To accomplish this, |
| 48 | .I INSTALL |
| 49 | checks whether the running system uses NPTL and sets |
| 50 | .B SYSVERSION |
| 51 | in |
| 52 | .B \*9/config |
| 53 | accordingly. |
rsc | 4ef9ff6 | 2005-01-14 20:13:27 +0000 | [diff] [blame] | 54 | .SH FILES |
| 55 | .TP |
| 56 | .B \*9/lib/moveplan9.files |
| 57 | the list of files that need to have |
| 58 | .B /usr/local/plan9 |
| 59 | edited out of them |
| 60 | .TP |
| 61 | .B \*9/lib/moveplan9.sh |
| 62 | the script that edits the files |
| 63 | .TP |
| 64 | .B \*9/src/mkmk.sh |
| 65 | the shell script used to build |
| 66 | .IR mk (1) |
| 67 | .TP |
| 68 | .B \*9/dist/manweb |
| 69 | the shell script that builds the HTML manual |
| 70 | .TP |
| 71 | .B \*9/man/index.html |
| 72 | the top-level page in the HTML version of the manual |
| 73 | .SH SEE ALSO |
| 74 | .IR intro (1), |
| 75 | .IR cvs (1) |