To build Privoxy from source, autoconf, GNU make (gmake), and, of course, a C compiler like gcc are required. When building from a source tarball (either release version or nightly CVS tarball), first unpack the source: tar xzvf privoxy-&p-version;-src* [.tgz or .tar.gz] cd privoxy-&p-version; For retrieving the current CVS sources, you'll need CVS installed. Note that sources from CVS are development quality, and may not be stable, or well tested. To download CVS source: cvs -d:pserver:anonymous@cvs.ijbswa.sourceforge.net:/cvsroot/ijbswa login cvs -z3 -d:pserver:anonymous@cvs.ijbswa.sourceforge.net:/cvsroot/ijbswa co current cd current This will create a directory named current/, which will contain the source tree. You can also check out any Privoxy branch, just exchange the current name with the wanted branch name (Example: v_3_0_branch for the 3.0 cvs tree). It is also recommended to not run Privoxy as root, and instead it is suggested to create a privoxy user for this purpose. /etc/passwd might then look like: privoxy:*:7777:7777:privoxy proxy:/no/home:/no/shell And then /etc/group, like: privoxy:*:7777:privoxy Some binary packages may do this for you. Then, to build from either unpacked tarball or CVS source: autoheader autoconf ./configure # (--help to see options) make # (the make from gnu, gmake for *BSD) su make -n install # (to see where all the files will go) make install # (to really install) If you have GNU make, you can have the first four steps automatically done for you by just typing: make in the freshly downloaded or unpacked source directory. The default installation path for make install is /usr/local. This may of course be customized with the various ./configure path options. configure also accepts a --with-user and --with-group options for setting user and group ownership. If you do install to /usr/local, the install will use sysconfdir=$prefix/etc/privoxy by default. All other destinations, and the direct usage of --sysconfdir flag behave like normal, i.e. will not add the extra privoxy directory. This is for a safer install, as there may already exist another program that uses a file with the config name, and thus makes /usr/local/etc cleaner. If installing to /usr/local, the docs will go by default to $prefix/share/doc. But if this directory doesn't exist, it will then try $prefix/doc and install there before creating a new $prefix/share/doc just for Privoxy. Again, if the installs goes to /usr/local, the localstatedir (ie: var/) will default to /var instead of $prefix/var so the logs will go to /var/log/privoxy/, and the pid file will be created in /var/run/privoxy.pid. make install will attempt to set the correct values in config (main configuration file). If appropriate, an init script will be installed, but it is up to the user to determine how and where to start Privoxy. For more detailed instructions on how to build Redhat and SuSE RPMs, Windows self-extracting installers, building on platforms with special requirements etc, please consult the developer manual. For binary RPM installation, and other platforms, see the User Manual as well. ]]>