Some Notes on Installing SubVersion Home Page: http://subversion.tigris.org/ Free Online Book: Version Control with Subversion - http://svnbook.red-bean.com/ -- Mirrored at: http://www.pccc.com/downloads/subversion/svn-book.pdf 1st, I'm running 7.3RH as my key distribution. Love it or hate it, I'm big on stability and this is one stable platform. 2nd, playing with db scares me ;-) There are lots of programs that rely on specific versions and I don't want to break my system. SubVersion works best with db4 so I want to install that. 3rd, Yes, I tried the source RPM for DB4 and it conflicted with db3-utils and db3-devel. I'm not going to risk breaking things so I'm resorting to source. 4th, I don't like changing where the author intends his files to go unless there is a reason and I am hoping this will leave me with things divided between db3 and db4. In this case, having everything nicely in it's own dir sounds good. And since hindsight is 20/20 this helped a lot since I started with db-4.0.14 only to find out that 4.2.52 is what I really wanted! All I had to do was rm -rf /usr/local/BerkeleyDB4.0 and start over! 5th, I don't run Apache 2.0 which unfortunately also removes the SubVersion<->Apache tie-ins. They have a good suggestion to use Apache 2.0 on an alternate port which I may investigate in the future. OK, so SubVersion is fairly pointed about have things a certain way. So I am following their guidelines to a tee. First, I upgraded to Autoconf v2.59. #UNINSTALL THE OLD AUTOCONF rpm -e autoconf --nodeps mkdir /tmp/SUB20050304 cd /tmp/SUB20050304 wget http://www.pccc.com/downloads/subversion/autoconf-2.59.tar.gz cd /usr/src/ tar zxvf /tmp/SUB20050304/autoconf-2.59.tar.gz cd autoconf-2.59 ./configure --prefix=/usr make make install Next, I installed DB4. I installed the recommended 4.2 tree because the APR doesn't support the 4.3 tree yet. #INSTALL DB v4.2.52 cd /tmp/SUB20050304 wget http://www.pccc.com/downloads/subversion/db-4.2.52.tar.gz wget http://www.pccc.com/downloads/subversion/patch.4.2.52.1 wget http://www.pccc.com/downloads/subversion/patch.4.2.52.2 wget http://www.pccc.com/downloads/subversion/patch.4.2.52.3 cd /usr/src/ tar zxvf /tmp/SUB20050304/db-4.2.52.tar.gz cd /usr/src/db-4.2.52 patch -p0 < /tmp/SUB20050304/patch.4.2.52.1 patch -p0 < /tmp/SUB20050304/patch.4.2.52.2 patch -p0 < /tmp/SUB20050304/patch.4.2.52.3 cd build_unix ../dist/configure --enable-compat185 --enable-dump185 --enable-shared --enable-static --enable-rpc --enable-cxx edit Makefile and change DB185INC to include -I/usr/include/db1/ and DB185LIB to include -ldb1. Also add -s to LDFLAGS. make make install add this to /etc/ld.so.conf /usr/local/BerkeleyDB.4.2/lib run ldconfig --verbose #Next I installed SWIG. #INSTALL SWIG http://www.swig.org/ #UNINSTALL THE OLD SWIG rpm -e swig cd /tmp/SUB20050304 wget http://www.pccc.com/downloads/subversion/swig-1.3.24.tar.gz cd /usr/src tar zxvf /tmp/SUB20050304/swig-1.3.24.tar.gz cd SWIG-1.3.24 ./configure --with-python=/usr/bin/python2 make #NOTE: make check broke for me. I chose to ignore this and continue because it seemed to break on PHP. #make check make install #NOT NEEDED ANYMORE? #make runtime #make install-runtime #Finally, down to *actually* compiling SubVersion cd /tmp/SUB20050304 wget http://www.pccc.com/downloads/subversion/subversion-1.2.3.tar.bz2 cd /usr/src tar jxvf /tmp/SUB20050304/subversion-1.2.3.tar.bz2 cd subversion-1.2.3 rm -f /usr/local/lib/libsvn* rm -f /usr/local/lib/libapr* rm -f /usr/local/lib/libexpat* rm -f /usr/local/lib/libneon* ./configure --with-libs=/usr/local/ssl --with-ssl -with-berkeley-db=/usr/local/BerkeleyDB.4.2 --with-python=/usr/bin/python2 make make check # NOTE ((takes like 700MB and quite a long time ;-) ) make install make swig-py make install-swig-py make swig-pl make check-swig-pl make install-swig-pl make clean #ADD /usr/local/lib/svn-python/libsvn to /etc/ld.so.conf ldconfig -v #GET RID OF THE TEMP FILES rm -rf /tmp/SUB20050304