1 |
Installation instructions for SML/NJ |
Installation instructions for SML/NJ |
2 |
------------------------------------ |
------------------------------------ |
3 |
|
|
4 |
These are instructions for installing recent "working" versions of SML/NJ. |
These are instructions for installing recent "working" versions of SML/NJ |
5 |
|
on Unix-like systems, including MacOX X with the developer tools installed. |
6 |
|
|
7 |
|
If you are running MacOS X but don't have the developer tools, you can |
8 |
|
install the system starting from the disk image that we provide. See |
9 |
|
MACOSXINSTALL for details. |
10 |
|
|
11 |
|
If you are running Win32, see WININSTALL. |
12 |
|
|
13 |
1. If you are in a hurry (and you have network connectivity) ... |
1. If you are in a hurry (and you have network connectivity) ... |
14 |
---------------------------------------------------------------- |
---------------------------------------------------------------- |
36 |
- Run the installer, it will automatically fetch all other necessary |
- Run the installer, it will automatically fetch all other necessary |
37 |
tarballs: |
tarballs: |
38 |
|
|
39 |
|
$ config/new-install.sh |
40 |
|
|
41 |
|
or, if this should fail for any reason(*), |
42 |
|
|
43 |
$ config/install.sh |
$ config/install.sh |
44 |
|
|
45 |
If the installer complains about not being able to fetch those |
If the installer complains about not being able to fetch those |
52 |
------------------------------------------------- |
------------------------------------------------- |
53 |
|
|
54 |
- Use some other means of downloading the necessary tarballs. Store |
- Use some other means of downloading the necessary tarballs. Store |
55 |
them in directory $d. Then run the installer (config/install.sh). |
them in directory $d. Then run the installer (config/new-install.sh |
56 |
|
or config/install.sh). |
57 |
|
|
58 |
Here is a table that shows which packages you will need to download |
Here is a table that shows which packages you will need to download |
59 |
depending on what you select in config/targets. Take the union of |
depending on what you select in config/targets. Take the union of |
123 |
directory), you can customize the set of libraries that are |
directory), you can customize the set of libraries that are |
124 |
pre-loaded (either directly or via CM's "autoload" mechanism). |
pre-loaded (either directly or via CM's "autoload" mechanism). |
125 |
|
|
126 |
For this, edit config/preloads before running config/install.sh. |
For this, edit config/preloads before running config/new-install.sh |
127 |
|
(or config/install.sh). |
128 |
|
|
129 |
2.3. Using a different ftp server (for a step-1.-like installation) |
2.3. Using a different ftp server (for a step-1.-like installation) |
130 |
-------------------------------------------------------------------- |
-------------------------------------------------------------------- |
132 |
- If you have a local mirror for ftp.research.bell-labs.com/dist/smlnj, |
- If you have a local mirror for ftp.research.bell-labs.com/dist/smlnj, |
133 |
then you can speed up installation by pointing the automatic URL |
then you can speed up installation by pointing the automatic URL |
134 |
fetch mechanism there. The URL of the repository is stored in |
fetch mechanism there. The URL of the repository is stored in |
135 |
config/srcarchiveurl. Edit this file before running config/install.sh. |
config/srcarchiveurl. Edit this file before running |
136 |
|
config/new-install.sh (or config/install.sh). |
137 |
|
|
138 |
2.4. Using locally stored tarballs |
2.4. Using locally stored tarballs |
139 |
----------------------------------- |
----------------------------------- |
144 |
file:///usr/src/packages/smlnj/working/110.38 |
file:///usr/src/packages/smlnj/working/110.38 |
145 |
|
|
146 |
(In other words, the URL should spell out the name of the local |
(In other words, the URL should spell out the name of the local |
147 |
directory that happens to contain the tarballs.) |
directory that happens to contain the tarballs. Notice that |
148 |
|
this method does not seem to work with certain versions of wget |
149 |
|
which do not understand the file:// scheme.) |
150 |
|
|
151 |
2.5. What needs to be on my PATH? |
2.5. What needs to be on my PATH? |
152 |
---------------------------------- |
---------------------------------- |
196 |
2.8 Forcing the installer to use a particular URL getter program |
2.8 Forcing the installer to use a particular URL getter program |
197 |
---------------------------------------------------------------- |
---------------------------------------------------------------- |
198 |
|
|
199 |
By default, config/install.sh will attempt to use wget, curl, and lynx |
By default, config/new-install.sh (and config/install.sh) will |
200 |
(in that order). If you already know which of these programs you want |
attempt to use wget, curl, and lynx (in that order). If you |
201 |
|
already know which of these programs you want |
202 |
the installer to use, then set the environment variable URLGETTER |
the installer to use, then set the environment variable URLGETTER |
203 |
to "wget", "curl", or "lynx", respectively. |
to "wget", "curl", or "lynx", respectively. |
204 |
|
|
237 |
Once you have myxget, simply run: |
Once you have myxget, simply run: |
238 |
|
|
239 |
URLGETTER=myxget config/install.sh |
URLGETTER=myxget config/install.sh |
240 |
|
|
241 |
|
---------------------------------------------------------------------------- |
242 |
|
(*) config/new-install.sh is a newer version of our installer with |
243 |
|
major parts written in SML rather than as a shell script. |
244 |
|
Since it is fairly new it may still have some problems -- in which |
245 |
|
case you can fall back to the old config/install.sh. |