Opened 15 years ago
Closed 15 years ago
#409 closed defect (invalid)
Problem compiling python bindings in 1.0.16
Reported by: | Manuel Padrón Martínez | Owned by: | Olly Betts |
---|---|---|---|
Priority: | normal | Milestone: | |
Component: | Xapian-bindings | Version: | 1.0.16 |
Severity: | normal | Keywords: | |
Cc: | nicolaslara@… | Blocked By: | |
Blocking: | Operating System: | Linux |
Description (last modified by )
Hi:
Trying to compile python bindings I get this error:
/bin/sh ../libtool --tag=CXX --mode=link g++ -fno-strict-aliasing -Wall -Wno-unused -Wno-uninitialized -fvisibility=hidden -I/usr/local/include -g -O2 -avoid-version -module -shrext ".so" -o _xapian.la -rpath /usr/lib/python2.5/site-packages xapian_wrap.lo -L/usr/local/lib -lxapian -lstdc++ g++ -shared -nostdlib /usr/lib/gcc/x86_64-linux-gnu/4.3.2/../../../../lib/crti.o /usr/lib/gcc/x86_64-linux-gnu/4.3.2/crtbeginS.o .libs/xapian_wrap.o -L/usr/local/lib /usr/local/lib/libxapian.so -L/usr/lib/gcc/x86_64-linux-gnu/4.3.2 -L/usr/lib/gcc/x86_64-linux-gnu/4.3.2/../../../../lib -L/lib/../lib -L/usr/lib/../lib -L/usr/lib/gcc/x86_64-linux-gnu/4.3.2/../../.. -lstdc++ -lm -lc -lgcc_s /usr/lib/gcc/x86_64-linux-gnu/4.3.2/crtendS.o /usr/lib/gcc/x86_64-linux-gnu/4.3.2/../../../../lib/crtn.o -Wl,-soname -Wl,_xapian.so -o .libs/_xapian.so creating _xapian.la (cd .libs && rm -f _xapian.la && ln -s ../_xapian.la _xapian.la) cp `test -f modern/xapian.py || echo './'`modern/xapian.py . /bin/sh ../libtool --config > libtoolconfig.tmp . libtoolconfig.tmp; cp $objdir/_xapian.so . rm -f libtoolconfig.tmp PYTHONPATH=. /usr/bin/python -c "import _xapian;import xapian" Traceback (most recent call last): File "<string>", line 1, in <module> ImportError: ./_xapian.so: undefined symbol: _ZNK6Xapian8Database19metadata_keys_beginERKSs make[2]: *** [xapian.pyc] Error 1 make[2]: Leaving directory `/root/fisica-couch/sources/lucene-alternatives/xapian/xapian-bindings-1.0.16/python' make[1]: *** [all-recursive] Error 1 make[1]: Leaving directory `/root/fisica-couch/sources/lucene-alternatives/xapian/xapian-bindings-1.0.16/python' make: *** [all] Error 2
Change History (3)
comment:1 by , 15 years ago
comment:2 by , 15 years ago
Cc: | added |
---|
comment:3 by , 15 years ago
Description: | modified (diff) |
---|---|
Resolution: | → invalid |
Status: | new → closed |
The missing symbol is the method Xapian::Database::metadata_keys_begin:
$ echo _ZNK6Xapian8Database19metadata_keys_beginERKSs | c++filt Xapian::Database::metadata_keys_begin(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) const
This method was added in Xapian 1.0.9, so what this means is that you are trying to use xapian-bindings 1.0.16 (or 1.0.11) with xapian-core 1.0.8 or earlier - that's not a supported combination, and when you ran configure from xapian-bindings, you would have got a warning to this effect (it's not a hard error, as it will actually work unless a new symbol has been added, but we don't recommend it).
If you actually have a newer xapian-core installed (as well as the old one) you need to tell xapian-bindings where it is when you run its configure script, e.g.:
./configure XAPIAN_CONFIG=/usr/local/bin/xapian-config
So this isn't a bug in Xapian, hence closing as "invalid", which seems the most appropriate status we have for that.
I'm having the exact same issue building the python binding 1.0.11.
The problem seems related to libxapian.