There is no official subversion binary distribution for SUSE Linux. However, it is pretty easy to compile subversion on your SUSE Linux server.
- If you have an older version of subversion which you wish to remove before installing the latest, do the following cleanup:
- Run Yast2, go to Software->Software Management, search on “svn”, and remove it.
- Manually delete any remnant subversion files by doing the following:
rm -f /usr/local/lib/libsvn*
rm -f /usr/local/lib/libapr*
rm -f /usr/local/lib/libexpat*
rm -f /usr/local/lib/libneon*
- Make sure that you have “autoconf” installed by running “rpm -qa | grep autoconf”. If you do not have autoconf installed, run Yast2, go to Software->Software Management, and search for “autoconf” to install it.
- Get the following source distributions or newer from subversion website: “subversion-1.6.2.tar.gz” and “subversion-deps-1.6.2.tar.gz”.
- Extract both archives into the same directory on your SUSE Linux server:
tar -xvf subversion-1.6.2.tar
tar -xvf subversion-deps-1.6.2.tar
chown -R root:root subversion-1.6.2
mv subversion-1.6.2 /opt
You will end up with the subversion binaries in the “/opt/subversion-1.6.2” directory.
- Compile and install subversion with these commands:
You may see some errors when running “autogen.sh” or “configure”… just ignore them and hope that “make install” will work. (Some websites recommend using “checkinstall” instead of “make install” but my SUSE Linux server did not recognized “checkinstall”. “checkinstall” is supposed to generate an rpm package and update the rpm database appropriately to allow for easy uninstalls.)
- Double-check by running “man svn”. Then attempt to checkout a project with a command like:
svn --username bob --password vila co http:/serverhost/repos/myproject
Security Warning: The subversion password will be stored in clear text in a file “~/.subversion/auth/svn.simple”. If you are on a shared system, you might wish to restrict the directory permissions to prevent others from viewing that file.
Whew! Hopefully that wasn’t so bad to follow.