[svn.haxx.se] · SVN Dev · SVN Users · SVN Org · TSVN Dev · TSVN Users · Subclipse Dev · Subclipse Users · this month's index

HOWTO build svn under OS X w/o fink

From: Hamilton Link <helink_at_sandia.gov>
Date: 2002-07-30 19:41:13 CEST

Yay!

I have finally succeeded in building the subversion client and server
under OS X, without fink or any similar creature. The existing
svn/INSTALL file is reasonable, but imperfect when it comes to some of
the details, in particular wrt what supporting systems need to be
acquired & installed in an OS X environment.

Here's the process I went through (ymmv)...

I downloaded:
* the svn bootstrapping tarball (subversion-r2667)
* the latest snapshot tarballs for Apache's httpd-2.0, apr, and apr-util
(I got the 9am July 26th snapshots from http://cvs.apache.org/snapshots/)
* the latest distributions of python (2.2.1), Berkeley db (4.0.14), and
neon (0.21.3)
* Darwinized versions of automake (1.5) and libtool (1.4.2) from
http://www.apache.org/~pier/macosx/
* the fink versions of texinfo (4.0) and autoconf (2.53 -- 2.52 is not
good enough, svn/INSTALL is wrong about this!), fetched for me by a
coworker and dropped in my public folder

I read all the install docs a bunch of times to figure out orders of
installation, configuration arglists, etc.

Without messing with autoconf or libtool (called glibtool in Darwin --
libtool is something else), the svn bootstrapping tarball builds and
works fine to check out the latest version of the source (currently rev
2793).

Python 2.2.1 and Berkeley DB 4.0.14 both seem to make and install fine
in the standard OS X environment, and I haven't messed with them after I
installed them the first time.

I installed the new glibtool and automake (from .pkg files), and made
sure my path had /usr/local/bin before /usr/bin. I ran configure (no
args), make, and make install to build autoconf 2.53, and did the same
for texinfo. Then to polish off texinfo I did "cd /usr/share", "mkdir
texmf", and (in the texinfo source again) "make TEXMF=/usr/share/texmf
install-tex".

Building apache, expat, and neon:
I unpacked httpd-2.0, and unpacked apr and apr-util into
httpd-2.0/srclib/. In httpd-2.0/, I ran "./buildconf", "./configure
--enable-dav --enable-so --prefix=/usr/local/apache2 --with-dbm=db4
--with-berkeley-db=/usr/local/BerkeleyDB.4.0 --enable-maintainer-mode",
and then make depend, make, and make install.
   Buildconf and configure both generate warnings while running but they
don't appear severe (the first set is warnings about deprecated things,
the other warnings are about something being retried).

Once apache installed I went into httpd-2.0/srclib/apr-util/xml/expat/
and did configure, make, and make install just for expat (apache doesn't
put them where neon can find them, it seems. this may have to do with a
bad "apr-config --libs" result -- fixing apr-config would be preferable
to installing expat redundantly, but the only problem it causes is a
bunch of superfluous warnings about redundant definitions of things).

I unpacked neon next to the checked-out subversion code and did
"./configure --with-apr=/usr/local/apache2 --with-apr-
util=/usr/local/apache2 --with-expat --enable-shared", make, and make
install.

Building svn (client and server):
I followed the directions for building everything in a separate obj
directory from the code, for easy deleting and retrying.

In the svn code directory I ran "sh ./autogen.sh".
In the obj directory, "../svn/configure --with-apr=/usr/local/apache2
--with-apr-util=/usr/local/apache2 --with-berkeley-
db=/usr/local/BerkeleyDB.4.0 --with-neon=/usr/local --with-
apxs=/usr/local/apache2/bin/apxs --enable-maintainer-mode" (this is more
args than is probably necessary, the apache-related args will generally
have suitable defaults I think).
Fingers crossed? Then make clean, make, and make install.

good luck,
hamilton

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
For additional commands, e-mail: dev-help@subversion.tigris.org
Received on Tue Jul 30 19:37:44 2002

This is an archived mail posted to the Subversion Dev mailing list.

This site is subject to the Apache Privacy Policy and the Apache Public Forum Archive Policy.