Use the BerkeleyDB CPAN module for Windows 7 (64 bit)

I am trying to install the BerkeleyDB CPAN module on my Windows 7 PC (x86_64) with no luck (BerkeleyDB :: Hash is what I need). I have installed 64-bit ActivePerl and Oracle Berkeley DB 11gR2 5.3.15. First I tried to install using the command:

*cpan install BerkeleyDB* 

This happened with an error:

 *It looks like the installation of dmake and MinGW has failed. You will not be able to run Makefile commands or compile C extension code. Please check your internet connection and your proxy settings!* 

So, I installed the Microsoft Windows SDK for Windows 7 and the .NET Framework 4.

Then I installed cpanm

 *cpan App::cpanminus* 

And when I tried to run:

 *cpanm BerkeleyDB* 

I got an error:

 *Note (probably harmless): No library found for -llibdb Note (probably harmless): No library found for bufferoverflowU.lib* 

So, I edited the config.in file and changed lib and included the paths:

 *INCLUDE = C:\PROGRA~2\Oracle\BERKEL~1.15\include LIB = C:\PROGRA~2\Oracle\BERKEL~1.15\lib* 

Now that I have run perl makefile.pl, the warning about -llibdb is gone.

When I tried to run:

  *nmake* 

I got errors:

  *Creating library blib\arch\auto\BerkeleyDB\BerkeleyDB.lib and object blib\arc h\auto\BerkeleyDB\BerkeleyDB.exp BerkeleyDB.obj : error LNK2001: unresolved external symbol __heap_exist BerkeleyDB.obj : error LNK2001: unresolved external symbol db_version BerkeleyDB.obj : error LNK2001: unresolved external symbol db_strerror BerkeleyDB.obj : error LNK2001: unresolved external symbol db_env_create BerkeleyDB.obj : error LNK2001: unresolved external symbol db_create BerkeleyDB.obj : error LNK2001: unresolved external symbol db_sequence_create blib\arch\auto\BerkeleyDB\BerkeleyDB.dll : fatal error LNK1120: 6 unresolved ext ernals NMAKE : fatal error U1077: '"C:\Program Files (x86)\Microsoft Visual Studio 10.0 \VC\Bin\amd64\link.EXE"' : return code '0x460' Stop.* 

I almost lost all hope of successfully creating this module on my PC. Has anyone been lucky with this?

Many thanks,

SN

+1
x86-64 windows-7 perl berkeley-db
source share
1 answer

All of the following claims are unverified / unverified. Competent advice is available from # win32 in MagNET < irc://irc.perl.org/win32 > ( web chat ).

libdb patch required for 64-bit . Installing the entire new compiler toolchain before installing the dependent library and its headers made the problem difficult. If you still have binding problems after applying the patch, uninstall MS tools and try again using MinGW.

0
source share

All Articles