Subversion is a version control system that is designed to be a compelling replacement for CVS in the open source community. It extends and enhances CVS' feature set, while maintaining a similar interface for those already familiar with CVS. These instructions install the client and server software used to manipulate a Subversion repository. Creation of a repository is covered at Running a Subversion Server.
Download (HTTP): http://subversion.tigris.org/tarballs/subversion-1.3.1.tar.bz2
Download MD5 sum: 07b95963968ae345541ca99d0e7bf082
Download size: 6.7 MB
Estimated disk space required: 100 MB (additional 57 MB to install all bindings and 465 MB to run all test suites)
Estimated build time: 1.7 SBU (add 1.1 SBU for bindings and 20-60 minutes to run test suites)
Python-2.4.4 (required to run the test suite), Apache-2.2.2 or Apache Portable Runtime, neon-0.25.5, JDK-1.5.0_10 (to build the Java bindings), JUnit (required for running the Java bindings test suite and requires UnZip-5.52), Dante (alternate Java compiler), and Jikes (another alternate Java compiler)
pkg-config-0.20, libxml2-2.6.26 or expat-2.0.0, OpenSSL-0.9.8d, Heimdal-0.7.2 or MIT Kerberos V5-1.6
SWIG, Python-2.4.4, and Ruby-1.8.5
Note that the Python, Perl and Ruby bindings will not compile properly with the current version of SWIG. To build the bindings, you must have SWIG-1.3.{24,25} installed. Complete instructions for building the SWIG bindings can be found in the Subversion source tree file ./subversion/bindings/swig/INSTALL.
User Notes: http://wiki.linuxfromscratch.org/blfs/wiki/subversion
For reasons that are not yet fully understood, Subversion repositories based on some versions of Berkeley DB (notably 4.4.x) may not perform reliably. Though there have been no reports of corrupted databases caused by this issue, the Subversion test suite may report a failure in one of the tests due to problems opening a repository based on Berkeley DB. This issue only affects BDB-based repositories on a local installation and does not affect access to a BDB-based repository on a remote system built with older versions of Subversion or Berkeley DB.
For these reasons, the Berkeley DB back-end is disabled, and any local BDB-based repositories you may have will be unavailable after installing Subversion using the following instructions. Please reference the information at http://svnbook.red-bean.com/en/1.1/ch05s03.html#svn-ch-5-sect-3.5 if you need to migrate your repositores.
Install Subversion by running the following commands:
./configure --prefix=/usr \ --without-berkeley-db \ --with-installbuilddir=/usr/lib/apr-0 && make
If you have Apache installed, pass the --with-apr=/usr and --with-apr-util=/usr switches to the configure script. Otherwise, Subversion will overwrite APR and APR-utils from the Apache installation with the source distribution files. You may also need to pass --with-apxs=/usr/sbin/apxs as apxs might not be in an unprivileged user's PATH and won't be properly discovered. Additionally if you have Apache installed, you may safely remove the --with-installbuilddir=/usr/lib/apr-0 parameter as it will have no effect.
If you passed the --enable-javahl parameter to configure and wish to build the Java bindings, issue the following command:
make javahl
If you passed the -with-swig parameter to configure and wish to build the Perl, Python and/or Ruby bindings, issue any or all of the following commands:
make swig-pl && make swig-py && make swig-rb
To test the results of the Subversion build, issue: make check. This will take quite a long time.
The fs-base-test is known to fail with issues surrounding the Berkely database installation. As mentioned earlier, it is not yet fully understood why this test fails.
To test the results of the Java bindings build, issue make check-javahl. Note you must have the JUnit (version 3.8.x) testing framework installed.
To test the results of any or all of the SWIG bindings, you can use the following commands:
make check-swig-pl && make check-swig-py && make check-swig-rb
Now, as the root user:
make install && rm doc/{Makefile,doxygen.conf} && find doc -type d -exec chmod 755 {} \; && find doc -type f -exec chmod 644 {} \; && install -v -m755 -d /usr/share/doc/subversion-1.3.1 && cp -v -R doc/* /usr/share/doc/subversion-1.3.1
If you built the Java bindings, issue the following command as the root user to install them:
make install-javahl
If you built any of the SWIG bindings, issue any or all of the following commands as the root user to install them:
make install-swig-pl && make install-swig-py && echo /usr/lib/svn-python \ > /usr/lib/python2.4/site-packages/subversion.pth && make install-swig-rb
--with-installbuilddir=/usr/lib/apr-0: This parameter is used (and only has an effect if you used the source provided version of Apache Portable Runtime) to force the installation of some APR-related support programs to /usr/lib/apr-0 instead of /usr/build.
--with-neon=<prefix>: This option should be used if you wish to use a system-installed version of neon.
--with-ssl: This switch enables OpenSSL support in neon (only required if you use the bundled version of neon).
/etc/subversion/config is the Subversion system-wide configuration file. This file is used to specify defaults for different svn commands.
~/.subversion/config is the user's personal configuration file. It is used to override the system-wide defaults set in /etc/subversion/config.
Last updated on 2006-06-21 11:26:07 -0500