cp,mv,install: minor copy_internal refactoring
[coreutils.git] / README-prereq
blob9ae4b12af907e40063aff73ab683e6926f4aec13
1 This gives some notes on obtaining the tools required for development.
2 These tools can be used by the 'bootstrap' and 'configure' scripts,
3 as well as by 'make'.  They include:
5 - Autoconf   <https://www.gnu.org/software/autoconf/>
6 - Automake   <https://www.gnu.org/software/automake/>
7 - Bison      <https://www.gnu.org/software/bison/>
8 - Gettext    <https://www.gnu.org/software/gettext/>
9 - Git        <https://git-scm.com/>
10 - Gperf      <https://www.gnu.org/software/gperf/>
11 - Gzip       <https://www.gnu.org/software/gzip/>
12 - Help2man   <https://www.gnu.org/software/help2man/>
13 - M4         <https://www.gnu.org/software/m4/>
14 - Make       <https://www.gnu.org/software/make/>
15 - Perl       <https://www.cpan.org/>
16 - Tar        <https://www.gnu.org/software/tar/>
17 - Texinfo    <https://www.gnu.org/software/texinfo/>
18 - Wget       <https://www.gnu.org/software/wget/>
19 - XZ Utils   <https://tukaani.org/xz/>
21 It is generally better to use official packages for your system.
22 If a package is not officially available you can build it from source
23 and install it into a directory that you can then use to build this
24 package.  If some packages are available but are too old, install the
25 too-old versions first as they may be needed to build newer versions.
27 Here is an example of how to build a program from source.  This
28 example is for Autoconf; a similar approach should work for the other
29 developer prerequisites.  This example assumes Autoconf 2.71; it
30 should be OK to use a later version of Autoconf, if available.
32   prefix=$HOME/prefix   # (or wherever else you choose)
33   export PATH=$prefix/bin:$PATH
34   wget https://ftp.gnu.org/pub/gnu/autoconf/autoconf-2.71.tar.gz
35   gzip -d <autoconf-2.71.tar.gz | tar xf -
36   cd autoconf-2.71
37   ./configure --prefix=$prefix
38   make install
40 Once the prerequisites are installed, you can build this package as
41 described in README-hacking.