On Mon, Jun 20, 2011 at 01:30:25AM +0200, Cristian Greco wrote:

> $ python-dbg -c "import libtorrent"
> Traceback (most recent call last):
>   File "<string>", line 1, in <module>
> ImportError: /usr/lib/libboost_python-py26.so.1.46.1: undefined symbol: 
> Py_InitModule4_64
> [15005 refs]
> 
> This error is obliviously due to the fact boost.python is built against
> pythonX and not pythonX-dbg.

This is not obvious to me.  In the past [1], this symptom has been traced to a 
mismatch
between the python version used to build Boost and the python version used to 
build
the application -- i.e. python-libtorrent.

I note that python2.6 (2.6.7-1) was recently uploaded.  So first question is: 
does a
rebuild of python WITHOUT CHANGES fix the problem?


The boost python library references Py_InitModule4_64 but does
not define it:

  $ objdump --demangle -T /usr/lib/libboost_python-py26.so.1.46.1| grep 
Py_InitModule4_64
  0000000000000000      D  *UND*  0000000000000000              
Py_InitModule4_64

The python library defines this symbol:

  $ objdump -T --demangle /usr/lib/libpython2.6.so |grep Py_InitModule4
  000000000010d970 g    DF .text  00000000000002c7  Base        
Py_InitModule4_64

Nothing in /usr/share/doc/python2.6-dbg/README.debug suggests it would be 
needed to
define this symbol.



[1] http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=430659

-Steve

Attachment: signature.asc
Description: Digital signature

Reply via email to