I've written a patch which works fine here. Since I have no experience with swig I can't say if it is the right way to fix the problem. I don't really know where the 2 missing symbols came from in the succeeded initial builds.
Cheers, Greek0
diff -ur adonthell-0.3.3.cvs.20031022.orig/src/item_base.cc adonthell-0.3.3.cvs.20031022/src/item_base.cc --- adonthell-0.3.3.cvs.20031022.orig/src/item_base.cc 2005-02-27 21:57:04.000000000 +0100 +++ adonthell-0.3.3.cvs.20031022/src/item_base.cc 2005-02-27 21:59:35.000000000 +0100 @@ -28,8 +28,8 @@ struct swig_type_info; extern "C" { - swig_type_info *SWIG_Python_TypeQuery (const char*); - int SWIG_Python_ConvertPtr (PyObject*, void**, swig_type_info*, int); + swig_type_info *SWIG_TypeQuery (const char*); + int SWIG_ConvertPtr (PyObject*, void**, swig_type_info*, int); } // ctor @@ -149,8 +149,8 @@ PyObject *retval = call_method_ret ("combine", args); // try to retrieve result - SWIG_Python_ConvertPtr (retval, (void **) &result, - SWIG_Python_TypeQuery ("_p_item_base"), 1); + SWIG_ConvertPtr (retval, (void **) &result, + SWIG_TypeQuery ("_p_item_base"), 1); // cleanzp Py_XDECREF (retval); diff -ur adonthell-0.3.3.cvs.20031022.orig/src/py_adonthell_wrap.cc adonthell-0.3.3.cvs.20031022/src/py_adonthell_wrap.cc --- adonthell-0.3.3.cvs.20031022.orig/src/py_adonthell_wrap.cc 2003-10-22 17:13:54.000000000 +0200 +++ adonthell-0.3.3.cvs.20031022/src/py_adonthell_wrap.cc 2005-02-27 22:00:28.000000000 +0100 @@ -197,7 +197,7 @@ } /* Search for a swig_type_info structure */ -SWIGRUNTIME(swig_type_info *) +swig_type_info * SWIG_TypeQuery(const char *name) { swig_type_info *ty = swig_type_list; while (ty) { @@ -432,7 +432,7 @@ } /* Convert a pointer value */ -SWIGRUNTIME(int) +int SWIG_ConvertPtr(PyObject *obj, void **ptr, swig_type_info *ty, int flags) { swig_type_info *tc; char *c;