Rebuild docs
[privoxy.git] / doc / webserver / user-manual / installation.html
index 68270a1..a384626 100644 (file)
@@ -4,7 +4,7 @@
 <head>
   <title>Installation</title>
   <meta name="GENERATOR" content="Modular DocBook HTML Stylesheet Version 1.79">
-  <link rel="HOME" title="Privoxy 3.0.27 User Manual" href="index.html">
+  <link rel="HOME" title="Privoxy 3.0.33 User Manual" href="index.html">
   <link rel="PREVIOUS" title="Introduction" href="introduction.html">
   <link rel="NEXT" title="What's New in this Release" href="whatsnew.html">
   <link rel="STYLESHEET" type="text/css" href="../p_doc.css">
@@ -15,7 +15,7 @@
   <div class="NAVHEADER">
     <table summary="Header navigation table" width="100%" border="0" cellpadding="0" cellspacing="0">
       <tr>
-        <th colspan="3" align="center">Privoxy 3.0.27 User Manual</th>
+        <th colspan="3" align="center">Privoxy 3.0.33 User Manual</th>
       </tr>
       <tr>
         <td width="10%" align="left" valign="bottom"><a href="introduction.html" accesskey="P">Prev</a></td>
         files.</p>
       </div>
       <div class="SECT3">
-        <h3 class="SECT3"><a name="INSTALLATION-OS2" id="INSTALLATION-OS2">2.1.3. OS/2</a></h3>
-        <p>First, make sure that no previous installations of <span class="APPLICATION">Junkbuster</span> and / or
-        <span class="APPLICATION">Privoxy</span> are left on your system. Check that no <span class=
-        "APPLICATION">Junkbuster</span> or <span class="APPLICATION">Privoxy</span> objects are in your startup
-        folder.</p>
-        <p>Then, just double-click the WarpIN self-installing archive, which will guide you through the installation
-        process. A shadow of the <span class="APPLICATION">Privoxy</span> executable will be placed in your startup
-        folder so it will start automatically whenever OS/2 starts.</p>
-        <p>The directory you choose to install <span class="APPLICATION">Privoxy</span> into will contain all of the
-        configuration files.</p>
-      </div>
-      <div class="SECT3">
-        <h3 class="SECT3"><a name="INSTALLATION-MAC" id="INSTALLATION-MAC">2.1.4. Mac OS X</a></h3>
+        <h3 class="SECT3"><a name="INSTALLATION-MAC" id="INSTALLATION-MAC">2.1.3. Mac OS X</a></h3>
         <p>Installation instructions for the OS X platform depend upon whether you downloaded a ready-built
         installation package (.pkg or .mpkg) or have downloaded the source code.</p>
       </div>
       <div class="SECT3">
-        <h4 class="SECT3"><a name="OS-X-INSTALL-FROM-PACKAGE" id="OS-X-INSTALL-FROM-PACKAGE">2.1.5. Installation from
+        <h4 class="SECT3"><a name="OS-X-INSTALL-FROM-PACKAGE" id="OS-X-INSTALL-FROM-PACKAGE">2.1.4. Installation from
         ready-built package</a></h4>
         <p>The downloaded file will either be a .pkg (for OS X 10.5 upwards) or a bzipped .mpkg file (for OS X 10.4).
         The former can be double-clicked as is and the installation will start; double-clicking the latter will unzip
         <p>To uninstall, run /Applications/Privoxy/uninstall.command as sudo from an administrator account.</p>
       </div>
       <div class="SECT3">
-        <h4 class="SECT3"><a name="OS-X-INSTALL-FROM-SOURCE" id="OS-X-INSTALL-FROM-SOURCE">2.1.6. Installation from
+        <h4 class="SECT3"><a name="OS-X-INSTALL-FROM-SOURCE" id="OS-X-INSTALL-FROM-SOURCE">2.1.5. Installation from
         source</a></h4>
         <p>To build and install the Privoxy source code on OS X you will need to obtain the macsetup module from the
         Privoxy Sourceforge CVS repository (refer to Sourceforge help for details of how to set up a CVS client to have
         <p>To uninstall, run the macsetup module's uninstall.sh as sudo from an administrator account.</p>
       </div>
       <div class="SECT3">
-        <h3 class="SECT3"><a name="INSTALLATION-FREEBSD" id="INSTALLATION-FREEBSD">2.1.7. FreeBSD</a></h3>
+        <h3 class="SECT3"><a name="INSTALLATION-FREEBSD" id="INSTALLATION-FREEBSD">2.1.6. FreeBSD</a></h3>
         <p>Privoxy is part of FreeBSD's Ports Collection, you can build and install it with <tt class="LITERAL">cd
         /usr/ports/www/privoxy; make install clean</tt>.</p>
       </div>
       <table border="0" bgcolor="#E0E0E0" width="100%">
         <tr>
           <td>
-            <pre class="SCREEN"> tar xzvf privoxy-3.0.27-stable-src.tar.gz
cd privoxy-3.0.27-stable</pre>
+            <pre class="SCREEN">  tar xzvf privoxy-3.0.33-beta-src.tar.gz
 cd privoxy-3.0.33-beta</pre>
           </td>
         </tr>
       </table>
       </table>
       <p>This will create a directory named <tt class="FILENAME">&lt;root-dir&#62;/privoxy/</tt>, which will contain
       the source tree.</p>
-      <p>Note that source code in GIT is development quality, and may not be stable or well tested.</p>
+      <p>Note that source code in Git is development quality, and may not be stable or well tested.</p>
       <p>It is strongly recommended to not run <span class="APPLICATION">Privoxy</span> as root. You should
       configure/install/run <span class="APPLICATION">Privoxy</span> as an unprivileged user, preferably by creating a
       <span class="QUOTE">"privoxy"</span> user and group just for this purpose. See your local documentation for the
         </tr>
       </table>
       <p>Some binary packages may do this for you.</p>
-      <p>Then, to build from either unpacked tarball or CVS source:</p>
+      <p>Then, to build from either unpacked tarball or Git checkout:</p>
       <table border="0" bgcolor="#E0E0E0" width="100%">
         <tr>
           <td>
-            <pre class="SCREEN"> autoheader
- autoconf
- ./configure      # (--help to see options)
- make             # (the make from GNU, sometimes called gmake)
- su               # Possibly required
- make -n install  # (to see where all the files will go)
- make -s install  # (to really install, -s to silence output)</pre>
+            <pre class="SCREEN">  autoheader
 autoconf
 ./configure      # (--help to see options)
 make             # (the make from GNU, sometimes called gmake)
 su               # Possibly required
 make -n install  # (to see where all the files will go)
 make -s install  # (to really install, -s to silence output)</pre>
           </td>
         </tr>
       </table>
       <table border="0" bgcolor="#E0E0E0" width="100%">
         <tr>
           <td>
-            <pre class="SCREEN"> ./configure  --disable-toggle  --disable-editor  --disable-force</pre>
+            <pre class="SCREEN">  ./configure  --disable-toggle  --disable-editor  --disable-force</pre>
           </td>
         </tr>
       </table>
       <table border="0" bgcolor="#E0E0E0" width="100%">
         <tr>
           <td>
-            <pre class="SCREEN"> make -s install  USER=privoxy GROUP=privoxy</pre>
+            <pre class="SCREEN">  make -s install  USER=privoxy GROUP=privoxy</pre>
           </td>
         </tr>
       </table>
           <p>If you want to be able to make a Windows release package, get the NSIS .zip file from <a href=
           "https://sourceforge.net/projects/nsis/files/NSIS%203/" target=
           "_top">https://sourceforge.net/projects/nsis/files/NSIS%203/</a> and extract the NSIS directory to <tt class=
-          "LITERAL">privoxy/windows</tt>. Then edit the windows/GNUmakefile to set the location of the NSIS executable
-          - eg:</p>
+          "LITERAL">/&lt;root-dir&#62;/nsis/</tt>. Then edit the <tt class="FILENAME">windows/GNUmakefile</tt> to set
+          the location of the NSIS executable - eg:</p>
+          <table border="0" bgcolor="#E0E0E0" width="100%">
+            <tr>
+              <td>
+                <pre class="SCREEN">  # Path to NSIS
+  MAKENSIS = /&lt;root-dir&#62;/nsis/makensis.exe</pre>
+              </td>
+            </tr>
+          </table>
+          <p>Get the latest 8.x PCRE code from <a href="https://ftp.pcre.org/pub/pcre/" target="_top">PCRE
+          https://ftp.pcre.org/pub/pcre/</a> and build the static PCRE libraries with</p>
+          <table border="0" bgcolor="#E0E0E0" width="100%">
+            <tr>
+              <td>
+                <pre class="SCREEN">  export CFLAGS="-O2 -fstack-protector-strong -D_FORTIFY_SOURCE=2"
+  export LDFLAGS="-fstack-protector-strong"
+  export CPPFLAGS="-DPCRE_STATIC"
+
+  ./configure  --host=i686-w64-mingw32 \
+               --prefix=/usr/local/i686-w64-mingw32 \
+               --enable-utf  --enable-unicode-properties \
+               --enable-jit \
+               --enable-newline-is-anycrlf \
+               --enable-pcre16 \
+               --enable-pcre32 \
+               --disable-pcregrep-libbz2 \
+               --disable-pcregrep-libz \
+               --disable-pcretest-libreadline \
+               --disable-stack-for-recursion  \
+               --enable-static --disable-shared \
+    &#38;&#38;  make</pre>
+              </td>
+            </tr>
+          </table>
+          <p>If you want to be able to have Privoxy do TLS Inspection, get the latest 2.16.x MBED-TLS library source
+          code from <a href="https://github.com/ARMmbed/mbedtls/tags" target=
+          "_top">https://github.com/ARMmbed/mbedtls/tags</a>, extract the tar file into <tt class=
+          "LITERAL">&lt;root-dir&gt;</tt> and build the static libraries with</p>
+          <table border="0" bgcolor="#E0E0E0" width="100%">
+            <tr>
+              <td>
+                <pre class="PROGRAMLISTING">  export WINDOWS_BUILD=1
+  #  build for a Windows platform
+
+  unset DEBUG
+
+  export CC=i686-w64-mingw32-gcc
+  export LD=i686-w64-mingw32-gcc
+  export CFLAGS="-O2 -fstack-protector-strong -D_FORTIFY_SOURCE=2"
+  export LDFLAGS="${LDFLAGS} -fstack-protector-strong"
+
+  make lib
+  #  build the libraries</pre>
+              </td>
+            </tr>
+          </table>
+          <p>Get the brotli library from <a href="https://github.com/google/brotli/releases" target=
+          "_top">https://github.com/google/brotli/releases</a> and build the static libraries with</p>
           <table border="0" bgcolor="#E0E0E0" width="100%">
             <tr>
               <td>
-                <pre class="SCREEN"># Path to NSIS
-MAKENSIS = ./nsis/makensis.exe</pre>
+                <pre class="PROGRAMLISTING">  ./bootstrap
+  #  to create the GNU autotools files
+
+  autoconf
+
+  export CFLAGS="-O2 -fstack-protector-strong -D_FORTIFY_SOURCE=2"
+  export LDFLAGS="${LDFLAGS} -fstack-protector-strong"
+
+  ./configure  --host=i686-w64-mingw32 \
+               --prefix=/usr/local/i686-w64-mingw32 \
+               --enable-static   \
+               --disable-shared  \
+               --with-gnu-ld     \
+               --disable-silent-rules \
+    &#38;&#38; make</pre>
               </td>
             </tr>
           </table>
@@ -365,10 +423,10 @@ MAKENSIS = ./nsis/makensis.exe</pre>
           <table border="0" bgcolor="#E0E0E0" width="100%">
             <tr>
               <td>
-                <pre class="PROGRAMLISTING">  autoheader              # creates config.h.in
-  autoconf                # uses config.h.in to create the configure shell script
-  ./configure [options]   # creates GNUmakefile
-  make        [options]   # builds the program</pre>
+                <pre class="PROGRAMLISTING">  autoheader              # creates config.h.in
+  autoconf                # uses config.h.in to create the configure shell script
+  ./configure [options]   # creates GNUmakefile
+  make        [options]   # builds the program</pre>
               </td>
             </tr>
           </table>
@@ -382,7 +440,8 @@ MAKENSIS = ./nsis/makensis.exe</pre>
   --enable-zlib
   --enable-static-linking
   --disable-pthread
-  --disable-dynamic-pcre</pre>
+  --with-brotli
+  --with-mbedtls</pre>
               </td>
             </tr>
           </table>
@@ -394,7 +453,7 @@ MAKENSIS = ./nsis/makensis.exe</pre>
                 <pre class="PROGRAMLISTING">  $ export CFLAGS="-O2"              # set gcc optimization level
   $ export LDFLAGS="-Wl,--nxcompat"  # Enable DEP
   $ ./configure --host=i686-w64-mingw32 --enable-mingw32  --enable-zlib \
-  &#62;             --enable-static-linking --disable-pthread --disable-dynamic-pcre
+  &#62;             --enable-static-linking --disable-pthread
   $ make                             # build Privoxy</pre>
               </td>
             </tr>