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

Re: svn commit: r8418 - in trunk/packages/rpm: mandrake-9.0 mandrake-9.1 mandrake-9.2

From: Philip Martin <philip_at_codematters.co.uk>
Date: 2004-01-22 01:57:38 CET

Ben Reser <ben@reser.org> writes:

> On Wed, Jan 21, 2004 at 08:51:03PM +0000, Philip Martin wrote:
>> ../svn/configure: test: 10316u-20021212-0013: integer expression expected
>> configure: WARNING: swig bindings version 1.3.19 or newer needed for swig support.
>>
>> That "integer expression expected" message looks like an error.
>
> Humm. That's odd configure works fine here. Did you have SWIG
> installed when you ran this?

Yes, I had 1.3.16 built from a tarball. It identifies itself as

/usr/local/swig-1.3.16/bin/swig -version

SWIG Version 1.3.16u-20021212-0013
Copyright (c) 1995-1998
University of Utah and the Regents of the University of California
Copyright (c) 1998-2002
University of Chicago

Compiled with CC

and the configure code cannot handle that version number.

>> I used to build the Python bindings with swig 1.3.16, I have never use
>> them much but they seemed to work. Now it appears that I need to
>> upgrade. Was 1.3.16 broken?
>
> Doesn't work with the perl bindings. So in that respect yes.

I don't build the perl bindings as I only have 5.6.1 installed (I note
that Subversion's configure doesn't appear to detect that my perl is
too old).

I have verified that 1.3.16 doesn't work with the Python bindings
either, it doesn't have SWIG_Python_ConvertPtr, so I guess something
newer is required for python as well.

>> I have installed SWIG 1.3.21 and it doesn't seem to work.
>> When running swig I get this
>>
>> SWIG:1: Warning(120): -c command line option is deprecated. Use -noruntime instead.
>
> You can ignore this. It's deprecated but still works. Someone would
> need to make the Python bindings conditionaly use -noruntime for 1.3.20
> and newer and -c for the older ones.
>
>> and when linking I get
>>
>> cd subversion/bindings/swig/python && /bin/sh /home/pm/sw/subversion/obj/libtool --silent --mode=link gcc -shared -L/usr/local/swig-1.3.21/lib -rpath /usr/local/subversion/lib/svn-python/libsvn -avoid-version -module -o _client.la svn_client.lo -lswigpy ../../../../subversion/bindings/swig/libsvn_swig_py-1.la ../../../../subversion/libsvn_client/libsvn_client-1.la -lz
>> /home/pm/sw/subversion/obj/subversion/bindings/swig/python
>> /usr/bin/ld: cannot find -lswigpy
>> collect2: ld returned 1 exit status
>> make: *** [subversion/bindings/swig/python/_client.la] Error 1
>>
>> As far as I can see SWIG no longer provides libswigpy.so, the 1.3.20
>> CHANGES say that swigrun.i is provided instead. Is the Subversion
>> build responsible for converting that into libswigpy.so? Am I
>> supposed to do it (some magic swig configuration option I missed)? The
>> documentation in subversion/binding/INSTALL desn't answer my
>> questions.
>
> Nope it still provides libswigpy.so. You just probably were missing the
> dependencies for Python support when you built 1.3.21.

Swig 1.3.16 worked fine. Here's what I see when I configure Swig
1.3.21

checking for Tcl library... not found
checking for python... python
checking for Python prefix... /usr
checking for Python exec-prefix... /usr
checking for Python version... python2.1
checking for Python header files... -I/usr/include/python2.1 -I/usr/lib/python2.1/config
checking for Python library... /usr/lib/python2.1/config
checking for perl... perl

Looks OK to me, but it doesn't produce libswigpy.so only swigrun.i. I
looked at Swig's "configure --help" but there was on obvious option to
enable libswigpy. The installed swig executable has a -python option.

The process of converting swigrun.i into a shared library is something
like

swig -python -o swigpy.c swigrun.i
libtool --mode=compile gcc -o swigpy.lo -c swigpy.c
libtool --mode=link gcc -rpath /some/path -o libswigpy.la swigpy.lo
libtool --mode=install install-sh -c libswigpy.la /some/path/libswigpy.la

I know very little about swig. Is this a Swig library that I am
supposed to build and install with Swig? Or is it an application
library that Subversion should build and install with the other
Subversion libraries?

The first thing I tried was to create and install libswigpy.so, that
allowed me to run "make swig-py" and "install swig-py". Next I
removed -c from RUN_SWIG_PY and -lswigpy from the link command (which
I did by editing Makefile and build-outputs.mk) and that also worked.
Either way when I try to run svnlook.py I get

Traceback (most recent call last):
  File "/home/pm/sw/subversion/svn/tools/examples/svnlook.py", line 23, in ?
    from svn import core, fs, delta, repos
  File "/usr/local/subversion/lib/svn-python/svn/core.py", line 21, in ?
    from libsvn.core import *
  File "/usr/local/subversion/lib/svn-python/libsvn/core.py", line 5, in ?
    import _core
ImportError: /usr/local/subversion/lib/libsvn_swig_py-1.so.0: undefined symbol: SWIG_TypeQuery

-- 
Philip Martin
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
For additional commands, e-mail: dev-help@subversion.tigris.org
Received on Thu Jan 22 01:58:50 2004

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.