1 Compiling From Repository Sources
3 To reduce bandwidth and needless updates, the source code repository
4 does not contain automatically-generated files, even when these are
5 normally present in the distribution tarballs. Therefore, to build GNU
6 Wget from the sources in the repository, you'll need to have one or
7 more of the following (note that gettext, OpenSSL, libidn and libiconv
8 are not absolutely required):
10 * [20]autoconf (currently, GNU Wget requires version 2.61). This is
11 needed to generate the configure script from configure.in. This is
12 not required when building from a tarball distribution; only when
13 building from repository sources.
15 * [21]automake (currently, GNU Wget requires version 1.10.1). This is
16 needed for generating the Makefile.in templates that the configure
17 script uses to generate the Makefiles. As with autoconf, it is not
18 required when building from a tarball distribution; only when
19 building from repository sources.
21 * [22]flex is needed to generate the CSS-parsing code.
23 * [23]Perl, if you wish to generate the wget(1) manpage, or run the
24 tests in the tests/ sub directory. Tarball distributions include an
25 already-generated wget.1 manual. The command "make check" runs the
26 test suite written in perl. To execute all the tests you need
27 [24]libwww-perl perl library. If "perl -MCPAN -e 'install
28 Bundle::LWP'" fails then you most likely don't have cpan module
29 installed. First download [25]CPAN and [26]install it. Then execute
30 "perl -MCPAN -e 'install Bundle::LWP'". Now "make check" should
31 pass most of the tests in the test suite.
33 * [27]texinfo in order to generate Info, PostScript and/or HTML
34 documentation. You don't need texinfo in order to generate the
35 wget(1) manpage; however, note that the manpage does not include
36 the full documentation. Tarball distributions include the
37 already-generated documentation in these formats.
39 * [28]gettext, if you wish to compile with NLS (Native Language
40 Support), which is enabled by default. If you do not have gettext,
41 you can compile without it by specifying --disable-nls to the
42 ./configure script. This is true regardless of where you obtained
43 the source you're building. NOTE: if you get errors about
44 AM_GNU_GETTEXT and/or AM_INTL_SUBDIR, you probably have a buggy
45 version of GNU m4. Upgrade to the latest version. You may also need
46 to export M4=<new m4 path>, to be sure that autoconf/automake use
47 it instead of the old one.
49 * [29]OpenSSL to handle encrypted web sessions. You almost certainly
50 want this. It is not enough to have the library installed; you need
51 to have the header files available to compile against as well. For
52 GNU/Linux systems, this usually means installing a "developer"
53 package for openssl (for example, [30]Debian systems require
54 installation of the libssl-dev package). Alternatively, you can
55 compile GNU Wget against the [31]GNUTLS library instead, by
56 specifying --with-ssl=gnutls to the ./configure script; however,
57 building against GNUTLS is currently experimental, and not
58 officially supported. If you have OpenSSL and its development
59 headers installed, but don't want to build Wget with it, specify
60 --without-ssl to the ./configure script.
62 * [32]libidn is required for IDN/IRI support (non-ASCII characters
63 within what would otherwise be URLs).
65 * [33]libiconv is required on non-GNU systems, for IDN/IRI support.
66 On GNU systems, the functionality provided by libiconv is already
67 present in the system libraries.
69 * [34]git is used to fetch gnulib files trough the bootstrap.sh script.
71 For those who might be confused as to what to do once they check out
72 the source code, considering configure and Makefile do not yet exist at
73 that point, a shell script called bootstrap.sh has been provided. After
74 calling ./bootstrap.sh you're ready to build GNU Wget in the normal
75 fashion, with ./configure and make.
77 So, to sum up, after checking out the source code as described above,
78 you may proceed as follows:
79 1. Change to the topmost GNU Wget directory:
80 $ cd wget # assumes you've cloned a repository to "./wget"
81 2. Generate all the automatically-generated files required prior to
82 configuring the package:
84 3. Configure the package and compile it:
85 $ ./configure [some_parameters]
87 4. Hack, compile, test, hack, compile, test...
89 GNU Wget 1.12-devel (9cb2563197bc)
91 Copyright © 2008,2010 Free Software Foundation, Inc.
92 License GPLv3+: GNU GPL version 3 or later
93 <http://www.gnu.org/licenses/gpl.html>.
94 This is free software: you are free to change and redistribute it.
95 There is NO WARRANTY, to the extent permitted by law.
97 Originally written by Hrvoje Niksic <hniksic@xemacs.org>.
104 [Raw Text................] Do
106 * [39]MoinMoin Powered
109 * [42]Valid HTML 4.01
110 __________________________________________________________________
112 All content © 2007 Free Software Foundation. For terms of use,
113 redistribution, and modification, please see the [43]WikiLicense page.
117 20. http://www.gnu.org/software/autoconf/
118 21. http://www.gnu.org/software/automake/
119 22. http://flex.sourceforge.net/
120 23. http://www.perl.org/
121 24. http://search.cpan.org/dist/libwww-perl/lib/Bundle/LWP.pm
122 25. http://search.cpan.org/CPAN/authors/id/A/AN/ANDK/CPAN-1.9402.tar.gz
123 26. http://apthorpe.cynistar.net/code/configuring_cpan.html
124 27. http://www.gnu.org/software/texinfo/
125 28. http://www.gnu.org/software/gettext/
126 29. http://www.openssl.org/
127 30. http://www.debian.org/
128 31. http://www.gnu.org/software/gnutls/
129 32. http://www.gnu.org/software/libidn/
130 33. http://www.gnu.org/software/libiconv/
131 34. http://git-scm.com/
132 35. http://wget.addictivecode.org/CompilingRepoSources?action=edit&editor=text
133 36. http://wget.addictivecode.org/CompilingRepoSources
134 37. http://wget.addictivecode.org/CompilingRepoSources?action=info
135 38. http://wget.addictivecode.org/CompilingRepoSources?action=AttachFile
136 39. http://moinmo.in/
137 40. http://moinmo.in/Python
138 41. http://moinmo.in/GPL
139 42. http://validator.w3.org/check?uri=referer
140 43. http://wget.addictivecode.org/WikiLicense