From: William S F. <ws...@fu...> - 2006-02-12 21:25:38
|
Neal Becker wrote: > On Saturday 11 February 2006 10:16 am, William S Fulton wrote: >>Neal Becker wrote: >>>swig won't configure on standard linux x86_64 systems where 64bit stuff >>>is in /usr/lib64, including Fedora. Here is the problem, in top-level >>>configure: >>> AC_MSG_CHECKING(for Python lib dir) >>> PYLIBDIR=`($PYTHON -c "import sys; print sys.lib") 2>/dev/null` >>> if test -z "$PYLIBDIR"; then >>> # older versions don't have sys.lib so the best we can do is >>>assume lib >>> PYLIBDIR="lib" >>> fi >>> AC_MSG_RESULT($PYLIBDIR) >>> >>>This is wrong. >>> >>>First of all, when did sys have a lib member? It doesn't in >>>python-2.4.2. Second, it's still wrong. On these systems there is more >>>than one place to find modules. Arch-indep are in /usr/lib/python2.4 >>>while arch-dep are in /usr/lib64/python2.4. >>> >>>If you're looking for blah/config.h, it's found >>>in /usr/lib64/python2.4/config. >>> >>>I suggest looking at distutils. >>> >>>This is from my .rpmmacros, I think this shows the idea: >>> >>>%python_sitearch %(%{__python} -c 'from distutils import sysconfig; print >>>sysconfig.get_python_lib(1)') >>Can you provide a patch to configure.in and we'll take a look at it? >>Thanks. >> >>William > > I'm afraid I had to guess a bit as to what exactly configure is looking for. > Everything you want can be found in distutils. Anyway, here is my guess: > > > > ------------------------------------------------------------------------ > > --- configure.in.orig 2006-02-11 18:23:41.000000000 -0500 > +++ configure.in 2006-02-11 19:30:48.000000000 -0500 > @@ -551,6 +551,14 @@ > PYTHON="$PYBIN" > fi > > +PYINCLUDE=`($PYTHON -c "from distutils import sysconfig; print sysconfig.get_python_inc()") 2>/dev/null` > +if test -n "$PYINCLUDE"; then > + PYLIB=`($PYTHON -c "from distutils import sysconfig; print sysconfig.get_python_lib(1)") 2>/dev/null` > + PYLINK=`($PYTHON -c "from distutils import sysconfig; print sysconfig.get_config_var(\"BLDLIBRARY\")") 2>/dev/null` > + AC_MSG_RESULT($PYINCLUDE) > + AC_MSG_RESULT($PYLIB) > + AC_MSG_RESULT($PYLINK) > +else > if test -n "$PYTHON"; then > AC_MSG_CHECKING(for Python prefix) > PYPREFIX=`($PYTHON -c "import sys; print sys.prefix") 2>/dev/null` > @@ -615,6 +623,7 @@ > PYLINK="-l$PYVERSION" > fi > fi > +fi > > # Cygwin (Windows) needs the library for dynamic linking > case $host in Thanks, this was too late for 1.3.28, but we'll put it into cvs soon and see how it goes. William |