From: Donald Nakar on
Hello to everyone,

I'm trying to install bdb-0.6.5 on my Ubuntu machine. I was able to
install it using the following commands:

ruby extconf.rb --with-db-dir=/usr/local/berkeleydb
--with-db-lib=/usr/local/berkeleydb/lib
--with-db-include=/usr/local/berkeleydb/include

make

make install

But when I try to use it I always get the following error

/usr/local/lib/site_ruby/1.8/i486-linux/bdb.so: (NotImplementedError)
BDB needs compatible versions of libdb & db.h
you have db.h version 4.8.24 and libdb version 4.7.25

The BerkeleyDB I'm currently using is indeed version 4.8.24 and the lib
inside is version 4.8, so now I'm not sure why it's seeing libdb 4.7.25.
After trying to check the logs when running extconf.rb I saw this line:

extconf.rb: Entering directory `src'
checking for db_version() in -ldb-4.7... yes
checking for rb_frame_this_func() in ruby.h... yes
checking for rb_block_proc() in ruby.h... yes
checking for rb_io_stdio_file() in ruby.h... no
checking for rb_block_call() in ruby.h... yes
checking for Array#insert... yes
checking for Array#values_at... yes
checking for rb_io_t in ruby.h,rubyio.h... yes
checking for DB_AFTER in db.h...yes
checking for DB_AGGRESSIVE in db.h...yes
checking for DB_APPEND in db.h...yes
checking for DB_ARCH_ABS in db.h...yes

it's seeing a different version even if I explicitly pointed it to the
correct Berkeleydb, removing the --with-db-lib= and --with-db-include=
and just leaving the --with-db-dir=/usr/local/berkeleydb doesn't help.

Anyone that can help me with this?

Regards,
Donald
--
Posted via http://www.ruby-forum.com/.