Opened 13 years ago
Closed 13 years ago
#591 closed defect (invalid)
Xapian-bindings/python; libs/_xapian.so - file not found
Reported by: | framedbutton | Owned by: | Richard Boulton |
---|---|---|---|
Priority: | normal | Milestone: | |
Component: | Xapian-bindings (Python) | Version: | 1.3.0 |
Severity: | major | Keywords: | |
Cc: | Blocked By: | ||
Blocking: | Operating System: | Linux |
Description
Hello, I tried to compile xapian from svn and got:
make[4]: Entering directory `/home/michal/build/xapian/xapian-bindings/python' test -d xapian || mkdir xapian /bin/sh ../libtool --config > libtoolconfig.tmp . ./libtoolconfig.tmp; cp $objdir/_xapian.so xapian cp: cannot stat `.libs/_xapian.so': No such file or directory make[4]: *** [xapian/_xapian.so] Error 1
Explicitly configuring with --enable-shared=yes doesn't seem to change the result. I am using the latest python2 in arch (2.7.2).
Note:
See TracTickets
for help on using tickets.
Debugged this on IRC - for the benefit of people from the future finding this ticket via searches for the error message, here's what was going on:
The problem turned out to be that the tree had been configured for python 3.2, then xapian.la built, and then reconfigured for python 2.7.
Python 3.2 names the shared object _xapian.cpython-32mu.so, which we do handle correctly. But in this case, _xapian.la exists so we don't rebuild for python 2.7, and python 2.7 names the shared object _xapian.so, which doesn't exist. Even if the name were the same, the object built for 3.2 wouldn't work - a "make distclean" is needed before reconfiguring to return the tree to the freshly unpacked state, and that solved the problem in this case.