Simon Woodside | HOWTO build AxKit on Mac OS X 10.4 Tiger
Skip to content >

HOWTO build AxKit on Mac OS X 10.4 Tiger

Last updated, 2005/09/22 - using 10.4.2. I started with a fresh install of 10.4, Xcode 2.1, and fink. Mac OS X is getting to be a better and better UNIX system to run stuff like AxKit on, so this HOWTO is actually shorter and easier than it used to be.

Update 2004/02/13 - using 10.3.0. I started with a fresh install of 10.3.0 and a fresh install of Xcode 1.1 and a fresh install of fink too.

Update 2003/07/09. I no longer use Sablotron as LibXSLT is now considered to be better, faster, and I found the support is good. So, you can skip that part of the instructions (which were a hassle anyway).

Read this

A few notes before we begin.


You should use the fink open-source compilation/ package manager to install most of the good stuff here. If you don't have it, get it now. It's always good to use the apt-get command to install pre-compiled binaries whenever possible (as opposed to fink) because it's so much faster. Fink's easy to use but I'm assuming to know how it works.


I also use CPAN, like everyone else, to get the perl modules that are needed. Set that up now if you haven't already. (google for cpan and "OS X" should help). I'm going to assume you know how to use CPAN. To run CPAN on OS X just use the cpan command (you usually have to run it as root).

Where to put files that you are building from source

I always build software in my "sandbox" directory under my home directory. For axkit, I use ~/sandbox/axkit.

Now that we have those items out of the way, now we get to the installation.


Former version of Mac OS X came with old and out of date versions of perl. But OS X 10.4 comes with perl 5.8.6. So, no need to update perl any more.

Install some important libraries

You'll need to install libxml, libxslt and expat. You can usually rely on fink to install relatively current versions of these libraries.

sudo apt-get install libxml
sudo apt-get install libxslt
sudo apt-get install expat

You may also need to install the -dev and -shlibs versions of these packages as well.

AxKit in the past can be a bit picky about what versions of libxml and libxslt it's happy with, although this time I had no problem. The best way to check your versions is with xsltproc -V. I get:

Using libxml 20616, libxslt 10111 and libexslt 809
xsltproc was compiled against libxml 20616, libxslt 10111 and libexslt 809
libxslt 10111 was compiled against libxml 20616
libexslt 809 was compiled against libxml 20616

Install perl modules and AxKit

AxKit requires a whole bunch of other associated modules. Usually you can rely on CPAN to do all the work for you but right now there's a problem with some Apache modules. Still load up CPAN now.

sudo perl -MCPAN -e shell

Now begin by installing XML::LibXML. Former version gave trouble on OS X but 1.5.6 seems to be OK.

install XML::LibXML

Next we will install XML::Parser. This one can be tricky because it relies on the expat library. If you installed expat with fink, it's in a "non-standard" location.

o conf makepl_arg "EXPATLIBPATH=/sw/lib EXPATINCPATH=/sw/include"
install XML::Parser

Now we install AxKit itself.

There's an annoying problem with Apache perl modules that can no longer test when running as root. Clearly this is a problem when using CPAN since it must be run as root. So, we will have to install certain modules manually. Drop out of CPAN and go back to /usr/local/src and make sure you are NOT root for now.


(or whatever the latest version of AxKit is)

tar -xvzf AxKit-1.6.2.tar.gz
cd AxKit-1.62/
perl Makefile.PL
make test
sudo make install

The Makefile for AxKit is quite intelligent, it will ask you about a whole slew of "optional" modules that AxKit needs to work correctly. I say "optional" in quotes because in reality it's best to install most of them. As of this writing I recommend you say "yes" to ALL of the optional modules EXCEPT XML::Sablotron -- don't install sablotron.

After you make your choices, you will eventually see something like this:

---- Unsatisfied dependencies detected during [M/MS/MSERGEANT/AxKit-1.6.2.tar.gz] -----
Shall I follow them and prepend them to the queue
of modules we are processing right now? [yes] 

Say yes :-) Say yes to all of the "unsatisfied dependencies" questions.

Nearly done now.

Configure Apache for use with AxKit

You used to have to compile a new Apache to get a working version of mod_perl, but Apple's got their act together now and the pre-installed Apache (called httpd on the disk) is the right version (1.3), has a working mod_perl, and will work fine with AxKit. Hooray!

Instead of telling you how to do this, I'll just send you over to the AxKit Quick Start Guide. Skip the install, since you already did that, and go straight to the "Edit your httpd.conf file" section.

Help and feedback

Hopefully everything will work! If it doesn't, you have two options. The first is to email me personally. The second (and better) option is to post to the axkit-users mailing list. Myself and several other OS X AxKit users are on there.

Copyright © 1996-2007 Simon Woodside. If no license is noted, rights are reserved.

Valid XHTML 1.0 strict? Made with AxKit and Saxite.