From: david Date: 2009-11-11T12:55:17+09:00 Subject: Re: Berkeley DB BDB Install on Windows On Nov 10, 5:19 pm, Luis Lavena wrote: > On Nov 10, 6:38 pm, david wrote: > > > [...] > > > Still working on it. I have installed Ruby 1.9.1 using the ZIP as > > opposed to the one-click installer. I also pulled down all the DLL > > file and copied them to the RubyHome\bin. I was able to install all > > required gems using gem. I then moved on to unpacking the devkit and > > moving the devkitHome/bin files to RubyHome/bin and moving the > > devkitHome to the RubyHome (not sure if I need to something more > > here). Attempted to install the DBD extension. Different errors > > produces, but seems like progress. > > Well, no, you will not reach progress because you're using VC6-build > of Ruby instead of MinGW, please keep reading... > > > C:\bdb-0.6.5>ruby extconf.rb --with-db-dir=C:\db-4.8.24 --with-db- > > lib=C:\db-4.8.24\lib --with-db-include=C:\db-4.8.24\include > > extconf.rb: Entering directory `src' > > [...] > > > C:\bdb-0.6.5> > > > I'm not sure what it means "You have to install development tools > > first." as I have no idea how it works. I have a funny feeling the > > devkit is not plugged in properly. I will continue to research. > > You still are not following. > > You're using ZIp files, or One-Click Installer, which are compiled > with VC6. Unless you have VC6 in your system, nothing will work. > > Please, install RubyInstaller package (RC1 is the latest stable one): > > http://rubyforge.org/frs/?group_id=167&release_id=41267 > > After install Development Kit on top of it (use 7-Zip to unpack it) > > Then you will be able to compile the extension. > > The Zip package at Ruby-lang, as you noticed, is incomplete, there is > a clear note in the download page about it: > > "Please note that some of the above binaries will require manual > download and installation of additional components detailed on this > page. Please ensure you’ve followed/performed these steps prior > reporting a bug." > > Please refer to our FAQ page in the wiki for RubyInstaller: > > http://wiki.github.com/oneclick/rubyinstaller/faq > > -- > Luis Lavena Thanks for your help Luis! I have now installed the correct Ruby installation and plugged in the development kit. Ruby is now... ruby 1.9.1p243 (2009-07-16 revision 24175) [i386-mingw32] I have also downgraded Berkeley DB to 4.6.21 which is compatible with bdb-0.6.5. During the extconf.rb execution it takes a lot longer now (about 10 minutes), as it seems to be searching for certain library files. Even with different combinations of the --with* parameters I have not been able to get the install to find the Berkeley DB files. The Berkeley DB files are as such... C:\db-4.6.21>dir Volume in drive C has no label. Volume Serial Number is CCDF-9304 Directory of C:\db-4.6.21 11/10/2009 10:34 PM . 11/10/2009 10:34 PM .. 11/09/2009 03:54 PM bin 10/03/2007 04:35 PM 882 dbvars.bat 11/09/2009 03:56 PM docs 11/09/2009 03:56 PM include 11/09/2009 03:56 PM installutil 11/09/2009 03:56 PM jar 11/09/2009 03:56 PM lib 09/28/2007 01:55 AM 5,725 LICENSE.txt 09/28/2007 01:55 AM 213 README.txt 3 File(s) 6,820 bytes 8 Dir(s) 17,880,039,424 bytes free C:\db-4.6.21> The lib directory contains the libdb46.lib and libdb46d.lib files. The bin directory contains libdb46.dll file. The include directory contains all the header files namely the db.h file. Sample execution of extconf.rb is as follows... C:\bdb-0.6.5>ruby extconf.rb --with-db-include=C:/db-4.6.21/include -- with-db-lib=C:/db-4.6.21/lib extconf.rb: Entering directory `src' checking for db_version() in -ldb-4.7... no checking for db_version_4007() in -ldb-4.7... no checking for db_version() in -ldb47... no checking for db_version_4007() in -ldb47... no checking for db_version() in -ldb-4.6... no checking for db_version_4006() in -ldb-4.6... no checking for db_version() in -ldb46... no checking for db_version_4006() in -ldb46... no checking for db_version() in -ldb-4.5... no checking for db_version_4005() in -ldb-4.5... no checking for db_version() in -ldb45... no checking for db_version_4005() in -ldb45... no checking for db_version() in -ldb-4.4... no checking for db_version_4004() in -ldb-4.4... no checking for db_version() in -ldb44... no checking for db_version_4004() in -ldb44... no checking for db_version() in -ldb-4.3... no checking for db_version_4003() in -ldb-4.3... no checking for db_version() in -ldb43... no checking for db_version_4003() in -ldb43... no checking for db_version() in -ldb-4.2... no checking for db_version_4002() in -ldb-4.2... no checking for db_version() in -ldb42... no checking for db_version_4002() in -ldb42... no checking for db_version() in -ldb-4.1... no checking for db_version_4001() in -ldb-4.1... no checking for db_version() in -ldb41... no checking for db_version_4001() in -ldb41... no checking for db_version() in -ldb-4.0... no checking for db_version_4000() in -ldb-4.0... no checking for db_version() in -ldb-4... no checking for db_version_4000() in -ldb-4... no checking for db_version() in -ldb40... no checking for db_version_4000() in -ldb40... no checking for db_version() in -ldb4... no checking for db_version_4000() in -ldb4... no checking for db_version() in -ldb3... no checking for db_version_3000() in -ldb3... no checking for db_version() in -ldb2... no checking for db_version_2000() in -ldb2... no checking for db_version() in -ldb... no Trying with -lpthread checking for db_version() in -ldb-4.7... no checking for db_version_4007() in -ldb-4.7... no checking for db_version() in -ldb47... no checking for db_version_4007() in -ldb47... no checking for db_version() in -ldb-4.6... no checking for db_version_4006() in -ldb-4.6... no checking for db_version() in -ldb46... no checking for db_version_4006() in -ldb46... no checking for db_version() in -ldb-4.5... no checking for db_version_4005() in -ldb-4.5... no checking for db_version() in -ldb45... no checking for db_version_4005() in -ldb45... no checking for db_version() in -ldb-4.4... no checking for db_version_4004() in -ldb-4.4... no checking for db_version() in -ldb44... no checking for db_version_4004() in -ldb44... no checking for db_version() in -ldb-4.3... no checking for db_version_4003() in -ldb-4.3... no checking for db_version() in -ldb43... no checking for db_version_4003() in -ldb43... no checking for db_version() in -ldb-4.2... no checking for db_version_4002() in -ldb-4.2... no checking for db_version() in -ldb42... no checking for db_version_4002() in -ldb42... no checking for db_version() in -ldb-4.1... no checking for db_version_4001() in -ldb-4.1... no checking for db_version() in -ldb41... no checking for db_version_4001() in -ldb41... no checking for db_version() in -ldb-4.0... no checking for db_version_4000() in -ldb-4.0... no checking for db_version() in -ldb-4... no checking for db_version_4000() in -ldb-4... no checking for db_version() in -ldb40... no checking for db_version_4000() in -ldb40... no checking for db_version() in -ldb4... no checking for db_version_4000() in -ldb4... no checking for db_version() in -ldb3... no checking for db_version_3000() in -ldb3... no checking for db_version() in -ldb2... no checking for db_version_2000() in -ldb2... no checking for db_version() in -ldb... no *** extconf.rb failed *** Could not create Makefile due to some reason, probably lack of necessary libraries and/or headers. Check the mkmf.log file for more details. You may need configuration options. Provided configuration options: --with-opt-dir --without-opt-dir --with-opt-include --without-opt-include=${opt-dir}/include --with-opt-lib --without-opt-lib=${opt-dir}/lib --with-make-prog --without-make-prog --srcdir=. --curdir --ruby=C:/Ruby19/bin/ruby --enable-unknown --disable-unknown --with-db-dir --without-db-dir --with-db-include=${db-dir}/include --with-db-lib=${db-dir}/lib --enable-thread --disable-thread --with-db-uniquename --without-db-uniquename --with-db-pthread --without-db-pthread --with-db-version --without-db-version --with-db-4.7lib --without-db-4.7lib --with-db-4.7lib --without-db-4.7lib --with-db47lib --without-db47lib --with-db47lib --without-db47lib --with-db-4.6lib --without-db-4.6lib --with-db-4.6lib --without-db-4.6lib --with-db46lib --without-db46lib --with-db46lib --without-db46lib --with-db-4.5lib --without-db-4.5lib --with-db-4.5lib --without-db-4.5lib --with-db45lib --without-db45lib --with-db45lib --without-db45lib --with-db-4.4lib --without-db-4.4lib --with-db-4.4lib --without-db-4.4lib --with-db44lib --without-db44lib --with-db44lib --without-db44lib --with-db-4.3lib --without-db-4.3lib --with-db-4.3lib --without-db-4.3lib --with-db43lib --without-db43lib --with-db43lib --without-db43lib --with-db-4.2lib --without-db-4.2lib --with-db-4.2lib --without-db-4.2lib --with-db42lib --without-db42lib --with-db42lib --without-db42lib --with-db-4.1lib --without-db-4.1lib --with-db-4.1lib --without-db-4.1lib --with-db41lib --without-db41lib --with-db41lib --without-db41lib --with-db-4.0lib --without-db-4.0lib --with-db-4.0lib --without-db-4.0lib --with-db-4lib --without-db-4lib --with-db-4lib --without-db-4lib --with-db40lib --without-db40lib --with-db40lib --without-db40lib --with-db4lib --without-db4lib --with-db4lib --without-db4lib --with-db3lib --without-db3lib --with-db3lib --without-db3lib --with-db2lib --without-db2lib --with-db2lib --without-db2lib --with-dblib --without-dblib --with-db-4.7lib --without-db-4.7lib --with-db-4.7lib --without-db-4.7lib --with-db47lib --without-db47lib --with-db47lib --without-db47lib --with-db-4.6lib --without-db-4.6lib --with-db-4.6lib --without-db-4.6lib --with-db46lib --without-db46lib --with-db46lib --without-db46lib --with-db-4.5lib --without-db-4.5lib --with-db-4.5lib --without-db-4.5lib --with-db45lib --without-db45lib --with-db45lib --without-db45lib --with-db-4.4lib --without-db-4.4lib --with-db-4.4lib --without-db-4.4lib --with-db44lib --without-db44lib --with-db44lib --without-db44lib --with-db-4.3lib --without-db-4.3lib --with-db-4.3lib --without-db-4.3lib --with-db43lib --without-db43lib --with-db43lib --without-db43lib --with-db-4.2lib --without-db-4.2lib --with-db-4.2lib --without-db-4.2lib --with-db42lib --without-db42lib --with-db42lib --without-db42lib --with-db-4.1lib --without-db-4.1lib --with-db-4.1lib --without-db-4.1lib --with-db41lib --without-db41lib --with-db41lib --without-db41lib --with-db-4.0lib --without-db-4.0lib --with-db-4.0lib --without-db-4.0lib --with-db-4lib --without-db-4lib --with-db-4lib --without-db-4lib --with-db40lib --without-db40lib --with-db40lib --without-db40lib --with-db4lib --without-db4lib --with-db4lib --without-db4lib --with-db3lib --without-db3lib --with-db3lib --without-db3lib --with-db2lib --without-db2lib --with-db2lib --without-db2lib --with-dblib --without-dblib extconf.rb:90:in `block in
': libdb not found (RuntimeError) from extconf.rb:69:in `catch' from extconf.rb:69:in `
' extconf.rb: Leaving directory `src' C:\bdb-0.6.5> Confusion sets in again. Thanks, Dave