[pybsddb] How to install bsdbb?
alanpae at ilkda.com
alanpae at ilkda.com
Mon Oct 25 21:53:28 CEST 2010
Hi,
I've been hunting around for some tutorial on how to properly build and
install python with bsdbb support but haven't been having much luck.
I'm using a stock OpenSolaris system which has python 2.6.4 installed by
default. Apparently I need both socket and bsddb support for the RSS
Feed Reader called straw.
Socket support seems to work ok but I can't figure out how to get bsddb
support.
I compiled Berkeley DB 5.1.19 and then download bsdbb3-5.0.0. By using
the --berkeley-db=/path statement it seemed to find everything and was
happy. Then python setup.py installed and it seemed to install.
So far so good I thought. I compiled up the rest of the dependencies
for straw and when it got to bsdbb it barfed. It complained that it
couldn't find it.
So I ran truss to find out what it was looking for.
It apparently does a lot of searching for a file or files:
stat64("/build/straw-0.27/bsddb", 0x080458C0) Err#2 ENOENT
open64("/build/straw-0.27/bsddb.so", O_RDONLY) Err#2 ENOENT
open64("/build/straw-0.27/bsddbmodule.so", O_RDONLY) Err#2 ENOENT
open64("/build/straw-0.27/bsddb.py", O_RDONLY) Err#2 ENOENT
open64("/build/straw-0.27/bsddb.pyc", O_RDONLY) Err#2 ENOENT
stat64("/usr/lib/python2.6/bsddb", 0x080458C0) Err#2 ENOENT
open64("/usr/lib/python2.6/bsddb.so", O_RDONLY) Err#2 ENOENT
open64("/usr/lib/python2.6/bsddbmodule.so", O_RDONLY) Err#2 ENOENT
open64("/usr/lib/python2.6/bsddb.py", O_RDONLY) Err#2 ENOENT
open64("/usr/lib/python2.6/bsddb.pyc", O_RDONLY) Err#2 ENOENT
stat64("/usr/lib/python2.6/plat-sunos5/bsddb", 0x080458C0) Err#2 ENOENT
open64("/usr/lib/python2.6/plat-sunos5/bsddb.so", O_RDONLY) Err#2 ENOENT
open64("/usr/lib/python2.6/plat-sunos5/bsddbmodule.so", O_RDONLY) Err#2
ENOENT
open64("/usr/lib/python2.6/plat-sunos5/bsddb.py", O_RDONLY) Err#2 ENOENT
open64("/usr/lib/python2.6/plat-sunos5/bsddb.pyc", O_RDONLY) Err#2
ENOENT
stat64("/usr/lib/python2.6/lib-tk/bsddb", 0x080458C0) Err#2 ENOENT
open64("/usr/lib/python2.6/lib-tk/bsddb.so", O_RDONLY) Err#2 ENOENT
open64("/usr/lib/python2.6/lib-tk/bsddbmodule.so", O_RDONLY) Err#2
ENOENT
open64("/usr/lib/python2.6/lib-tk/bsddb.py", O_RDONLY) Err#2 ENOENT
open64("/usr/lib/python2.6/lib-tk/bsddb.pyc", O_RDONLY) Err#2 ENOENT
stat64("/usr/lib/python2.6/lib-old/bsddb", 0x080458C0) Err#2 ENOENT
open64("/usr/lib/python2.6/lib-old/bsddb.so", O_RDONLY) Err#2 ENOENT
open64("/usr/lib/python2.6/lib-old/bsddbmodule.so", O_RDONLY) Err#2
ENOENT
open64("/usr/lib/python2.6/lib-old/bsddb.py", O_RDONLY) Err#2 ENOENT
open64("/usr/lib/python2.6/lib-old/bsddb.pyc", O_RDONLY) Err#2 ENOENT
stat64("/usr/lib/python2.6/lib-dynload/bsddb", 0x080458C0) Err#2 ENOENT
open64("/usr/lib/python2.6/lib-dynload/bsddb.so", O_RDONLY) Err#2 ENOENT
open64("/usr/lib/python2.6/lib-dynload/bsddbmodule.so", O_RDONLY) Err#2
ENOENT
open64("/usr/lib/python2.6/lib-dynload/bsddb.py", O_RDONLY) Err#2 ENOENT
open64("/usr/lib/python2.6/lib-dynload/bsddb.pyc", O_RDONLY) Err#2
ENOENT
stat64("/usr/lib/python2.6/site-packages/bsddb", 0x080458C0) Err#2
ENOENT
open64("/usr/lib/python2.6/site-packages/bsddb.so", O_RDONLY) Err#2
ENOENT
open64("/usr/lib/python2.6/site-packages/bsddbmodule.so", O_RDONLY)
Err#2 ENOENT
open64("/usr/lib/python2.6/site-packages/bsddb.py", O_RDONLY) Err#2
ENOENT
open64("/usr/lib/python2.6/site-packages/bsddb.pyc", O_RDONLY) Err#2
ENOENT
stat64("/usr/lib/python2.6/vendor-packages/bsddb", 0x080458C0) Err#2
ENOENT
open64("/usr/lib/python2.6/vendor-packages/bsddb.so", O_RDONLY) Err#2
ENOENT
open64("/usr/lib/python2.6/vendor-packages/bsddbmodule.so", O_RDONLY)
Err#2 ENOENT
open64("/usr/lib/python2.6/vendor-packages/bsddb.py", O_RDONLY) Err#2
ENOENT
open64("/usr/lib/python2.6/vendor-packages/bsddb.pyc", O_RDONLY) Err#2
ENOENT
stat64("/usr/lib/python2.6/vendor-packages/gst-0.10/bsddb", 0x080458C0)
Err#2 ENOENT
open64("/usr/lib/python2.6/vendor-packages/gst-0.10/bsddb.so", O_RDONLY)
Err#2 ENOENT
open64("/usr/lib/python2.6/vendor-packages/gst-0.10/bsddbmodule.so",
O_RDONLY) Err#2 ENOENT
open64("/usr/lib/python2.6/vendor-packages/gst-0.10/bsddb.py", O_RDONLY)
Err#2 ENOENT
open64("/usr/lib/python2.6/vendor-packages/gst-0.10/bsddb.pyc",
O_RDONLY) Err#2 ENOENT
stat64("/usr/lib/python2.6/vendor-packages/gtk-2.0/bsddb", 0x080458C0)
Err#2 ENOENT
open64("/usr/lib/python2.6/vendor-packages/gtk-2.0/bsddb.so", O_RDONLY)
Err#2 ENOENT
open64("/usr/lib/python2.6/vendor-packages/gtk-2.0/bsddbmodule.so",
O_RDONLY) Err#2 ENOENT
open64("/usr/lib/python2.6/vendor-packages/gtk-2.0/bsddb.py", O_RDONLY)
Err#2 ENOENT
open64("/usr/lib/python2.6/vendor-packages/gtk-2.0/bsddb.pyc", O_RDONLY)
Err#2 ENOENT
So I did a find trying to find something and got:
/usr/include/python2.6/bsddb3/bsddb.h
/usr/lib/python2.6/site-packages/bsddb3/_pybsddb.so
/usr/lib/python2.6/test/test_bsddb.py
/usr/lib/python2.6/test/test_bsddb.pyc
/usr/lib/python2.4/test/test_bsddb.py
/usr/lib/python2.4/test/test_bsddb.pyc
/opt/openoffice.org/basis3.2/program/python-core-2.6.1/lib/test/test_bsddb.py
/build/bsddb3-5.0.0/build/lib.solaris-2.11-i86pc-2.6/bsddb3/_pybsddb.so
/build/bsddb3-5.0.0/build/temp.solaris-2.11-i86pc-2.6/Modules/_bsddb.o
/build/bsddb3-5.0.0/Modules/bsddb.h
/build/bsddb3-5.0.0/Modules/_bsddb.c
Which as you can see doesn't match anything that it's looking for.
So I grabbed Python 2.7 and compiled it up. configure said that bsdbb
support would not be compiled in but I installed it anyways. That's
when I learned that socket support wasn't working. I have no idea how
to fix either.
Any suggestions?
thanks in advance,
alan
More information about the pybsddb
mailing list