1 # Copyright (c) 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008 The SCons Foundation
2 # src/README.txt 3842 2008/12/20 22:59:52 scons
5 SCons - a software construction tool
10 This is SCons, a tool for building software (and other files). SCons is
11 implemented in Python, and its "configuration files" are actually Python
12 scripts, allowing you to use the full power of a real scripting language
13 to solve build problems. You do not, however, need to know Python to
14 use SCons effectively.
16 See the RELEASE.txt file for notes about this specific release,
17 including known problems. See the CHANGES.txt file for a list of
18 changes since the previous release.
24 Before going further, you can check that this package you have is
25 the latest version by checking the SCons download page at:
27 http://www.scons.org/download.html
30 EXECUTION REQUIREMENTS
31 ======================
33 Running SCons requires Python version 1.5.2 or later. There should be
34 no other dependencies or requirements to run SCons. (There is, however,
35 an additional requirement to *install* SCons from this particular
36 package; see the next section.)
38 By default, SCons knows how to search for available programming tools
39 on various systems--see the SCons man page for details. You may,
40 of course, override the default SCons choices made by appropriate
41 configuration of Environment construction variables.
44 INSTALLATION REQUIREMENTS
45 =========================
47 Installing SCons from this package requires the Python distutils
48 package. The distutils package was not shipped as a standard part of
49 Python until Python version 1.6, so if your system is running Python
50 1.5.2, you may not have distutils installed. If you are running
51 Python version 1.6 or later, you should be fine.
53 NOTE TO RED HAT USERS: Red Hat shipped Python 1.5.2 as the default all
54 the way up to Red Hat Linux 7.3, so you probably do *not* have distutils
55 installed, unless you have already done so manually or are running Red
58 In this case, your options are:
60 -- (Recommended.) Install from a pre-packaged SCons package that
61 does not require distutils:
63 Red Hat Linux scons-1.2.0-1.noarch.rpm
65 Debian GNU/Linux scons_1.2.0-1_all.deb
68 Windows scons-1.2.0.win32.exe
70 -- (Optional.) Download the latest distutils package from the
73 http://www.python.org/sigs/distutils-sig/download.html
75 Install the distutils according to the instructions on the page.
76 You can then proceed to the next section to install SCons from
83 Assuming your system satisfies the installation requirements in the
84 previous section, install SCons from this package simply by running the
85 provided Python-standard setup script as follows:
87 # python setup.py install
89 By default, the above command will do the following:
91 -- Install the version-numbered "scons-1.2.0" and "sconsign-1.2.0"
92 scripts in the default system script directory (/usr/bin or
93 C:\Python*\Scripts, for example). This can be disabled by
94 specifying the "--no-version-script" option on the command
97 -- Install scripts named "scons" and "sconsign" scripts in the
98 default system script directory (/usr/bin or C:\Python*\Scripts,
99 for example). This can be disabled by specifying the
100 "--no-scons-script" option on the command line, which is useful
101 if you want to install and experiment with a new version before
102 making it the default on your system.
104 On UNIX or Linux systems, you can have the "scons" and "sconsign"
105 scripts be hard links or symbolic links to the "scons-1.2.0" and
106 "sconsign-1.2.0" scripts by specifying the "--hardlink-scons"
107 or "--symlink-scons" options on the command line.
109 -- Install "scons-1.2.0.bat" and "scons.bat" wrapper scripts in the
110 Python prefix directory on Windows (C:\Python*, for example).
111 This can be disabled by specifying the "--no-install-bat" option
114 On UNIX or Linux systems, the "--install-bat" option may be
115 specified to have "scons-1.2.0.bat" and "scons.bat" files
116 installed in the default system script directory, which is useful
117 if you want to install SCons in a shared file system directory
118 that can be used to execute SCons from both UNIX/Linux and
121 -- Install the SCons build engine (a Python module) in an
122 appropriate version-numbered SCons library directory
123 (/usr/lib/scons-1.2.0 or C:\Python*\scons-1.2.0, for example).
124 See below for more options related to installing the build
127 -- Install the troff-format man pages in an appropriate directory
128 on UNIX or Linux systems (/usr/share/man/man1 or /usr/man/man1,
129 for example). This can be disabled by specifying the
130 "--no-install-man" option on the command line. The man pages
131 can be installed on Windows systems by specifying the
132 "--install-man" option on the command line.
134 Note that, by default, SCons does not install its build engine library
135 in the standard Python library directories. If you want to be able to
136 use the SCons library modules (the build engine) in other Python
137 scripts, specify the "--standard-lib" option on the command line, as
140 # python setup.py install --standard-lib
142 This will install the build engine in the standard Python library
143 directory (/usr/lib/python*/site-packages or
144 C:\Python*\Lib\site-packages).
146 Alternatively, you can have SCons install its build engine library in a
147 hard-coded standalone library directory, instead of the default
148 version-numbered directory, by specifying the "--standalone-lib" option
149 on the command line, as follows:
151 # python setup.py install --standalone-lib
153 This is usually not recommended, however.
155 Note that, to install SCons in any of the above system directories,
156 you should have system installation privileges (that is, "root" or
157 "Administrator") when running the setup.py script. If you don't have
158 system installation privileges, you can use the --prefix option to
159 specify an alternate installation location, such as your home directory:
161 $ python setup.py install --prefix=$HOME
163 This will install SCons in the appropriate locations relative to
164 $HOME--that is, the scons script itself $HOME/bin and the associated
165 library in $HOME/lib/scons, for example.
171 See the RELEASE.txt file for notes about this specific release,
172 including known problems. See the CHANGES.txt file for a list of
173 changes since the previous release.
175 The scons.1 man page is included in this package, and contains a section
176 of small examples for getting started using SCons.
178 Additional documentation for SCons is available at:
180 http://www.scons.org/doc.html
186 SCons is distributed under the MIT license, a full copy of which is
187 available in the LICENSE.txt file. The MIT license is an approved Open
188 Source license, which means:
190 This software is OSI Certified Open Source Software. OSI
191 Certified is a certification mark of the Open Source Initiative.
193 More information about OSI certifications and Open Source software is
196 http://www.opensource.org/
202 Please report bugs by following the detailed instructions on our Bug
205 http://scons.tigris.org/bug-submission.html
207 You can also send mail to the SCons developers' mailing list:
211 But even if you send email to the mailing list please make sure that you
212 ALSO submit a bug report to the project page bug tracker, because bug
213 reports in email often get overlooked in the general flood of messages.
219 An active mailing list for users of SCons is available. You may send
220 questions or comments to the list at:
222 users@scons.tigris.org
224 You may subscribe to the mailing list by sending email to:
226 users-subscribe@scons.tigris.org
228 There is also a low-volume mailing list available for announcements
229 about SCons. Subscribe by sending email to:
231 announce-subscribe@scons.tigris.org
233 There are other mailing lists available for SCons developers, for
234 notification of SCons code changes, and for notification of updated
235 bug reports and project documents. Please see our mailing lists page
242 If you find SCons helpful, please consider making a donation (of cash,
243 software, or hardware) to support continued work on the project.
244 Information is available at:
246 http://www.scons.org/donate.html
252 Check the SCons web site at:
254 http://www.scons.org/
261 knight at baldmt dot com
262 http://www.baldmt.com/~knight/
264 With plenty of help from the SCons Development team: