summaryrefslogtreecommitdiff
path: root/devdocs/bash/basic-installation.html
diff options
context:
space:
mode:
Diffstat (limited to 'devdocs/bash/basic-installation.html')
-rw-r--r--devdocs/bash/basic-installation.html17
1 files changed, 17 insertions, 0 deletions
diff --git a/devdocs/bash/basic-installation.html b/devdocs/bash/basic-installation.html
new file mode 100644
index 00000000..cfb50a17
--- /dev/null
+++ b/devdocs/bash/basic-installation.html
@@ -0,0 +1,17 @@
+<h1 class="section">Basic Installation</h1> <p>These are installation instructions for Bash. </p> <p>The simplest way to compile Bash is: </p> <ol> <li> <code>cd</code> to the directory containing the source code and type ‘<samp>./configure</samp>’ to configure Bash for your system. If you’re using <code>csh</code> on an old version of System V, you might need to type ‘<samp>sh ./configure</samp>’ instead to prevent <code>csh</code> from trying to execute <code>configure</code> itself. <p>Running <code>configure</code> takes some time. While running, it prints messages telling which features it is checking for. </p> </li>
+<li> Type ‘<samp>make</samp>’ to compile Bash and build the <code>bashbug</code> bug reporting script. </li>
+<li> Optionally, type ‘<samp>make tests</samp>’ to run the Bash test suite. </li>
+<li> Type ‘<samp>make install</samp>’ to install <code>bash</code> and <code>bashbug</code>. This will also install the manual pages and Info file, message translation files, some supplemental documentation, a number of example loadable builtin commands, and a set of header files for developing loadable builtins. You may need additional privileges to install <code>bash</code> to your desired destination, so ‘<samp>sudo make install</samp>’ might be required. More information about controlling the locations where <code>bash</code> and other files are installed is below (see <a href="installation-names">Installation Names</a>). </li>
+</ol> <p>The <code>configure</code> shell script attempts to guess correct values for various system-dependent variables used during compilation. It uses those values to create a <samp>Makefile</samp> in each directory of the package (the top directory, the <samp>builtins</samp>, <samp>doc</samp>, <samp>po</samp>, and <samp>support</samp> directories, each directory under <samp>lib</samp>, and several others). It also creates a <samp>config.h</samp> file containing system-dependent definitions. Finally, it creates a shell script named <code>config.status</code> that you can run in the future to recreate the current configuration, a file <samp>config.cache</samp> that saves the results of its tests to speed up reconfiguring, and a file <samp>config.log</samp> containing compiler output (useful mainly for debugging <code>configure</code>). If at some point <samp>config.cache</samp> contains results you don’t want to keep, you may remove or edit it. </p> <p>To find out more about the options and arguments that the <code>configure</code> script understands, type </p> <div class="example"> <pre class="example">bash-4.2$ ./configure --help
+</pre>
+</div> <p>at the Bash prompt in your Bash source directory. </p> <p>If you want to build Bash in a directory separate from the source directory – to build for multiple architectures, for example – just use the full path to the configure script. The following commands will build bash in a directory under <samp>/usr/local/build</samp> from the source code in <samp>/usr/local/src/bash-4.4</samp>: </p> <div class="example"> <pre class="example">mkdir /usr/local/build/bash-4.4
+cd /usr/local/build/bash-4.4
+bash /usr/local/src/bash-4.4/configure
+make
+</pre>
+</div> <p>See <a href="compiling-for-multiple-architectures">Compiling For Multiple Architectures</a> for more information about building in a directory separate from the source. </p> <p>If you need to do unusual things to compile Bash, please try to figure out how <code>configure</code> could check whether or not to do them, and mail diffs or instructions to <a href="mailto:bash-maintainers@gnu.org">bash-maintainers@gnu.org</a> so they can be considered for the next release. </p> <p>The file <samp>configure.ac</samp> is used to create <code>configure</code> by a program called Autoconf. You only need <samp>configure.ac</samp> if you want to change it or regenerate <code>configure</code> using a newer version of Autoconf. If you do this, make sure you are using Autoconf version 2.69 or newer. </p> <p>You can remove the program binaries and object files from the source code directory by typing ‘<samp>make clean</samp>’. To also remove the files that <code>configure</code> created (so you can compile Bash for a different kind of computer), type ‘<samp>make distclean</samp>’. </p><div class="_attribution">
+ <p class="_attribution-p">
+ Copyright &copy; 2000, 2001, 2002, 2007, 2008 Free Software Foundation, Inc.<br>Licensed under the GNU Free Documentation License.<br>
+ <a href="https://www.gnu.org/software/bash/manual/html_node/Basic-Installation.html" class="_attribution-link">https://www.gnu.org/software/bash/manual/html_node/Basic-Installation.html</a>
+ </p>
+</div>