in reply to Re^2: Problems with the installation of DB_File in WindowsXP
in thread Problems with the installation of DB_File in WindowsXP

How do I fix it?Why is it saying "previous declaration of'size_t' was found"?

:) Its perl monks, and you don't even say what version of libdb you're using

I do fine with anything 4 and up

  • Comment on Re^3: Problems with the installation of DB_File in WindowsXP

Replies are listed 'Best First'.
Re^4: Problems with the installation of DB_File in WindowsXP
by ayanbiz (Initiate) on Nov 18, 2011 at 12:35 UTC
    The libdb file that I am using is libdb52.lib..

      That sounds awfully microsoftish and totally un-mingw-ish

      Maybe you should compile libdb yourself using your mingw toolkig, it works for me

      Or if you DuckDuckGo

      Install_DB_File_on_Strawberry_Perl

      How to install DB_File on Strawberry Perl

      Download and install the Oracle/Sleepycat libdb MSI:

      berkeley-db db-5.2.36.msi

      Go to the Berkeley DB directory:

      e.g. C:\Program Files\Oracle\Berkeley DB 4.6.21

      Copy the include directory to \strawberry\c\include\db:

      Copy the lib\libdb46.lib file to \strawberry\c\lib\libdb.a:

      Comment out two typedefs in \strawberry\c\include\db\db.h

      --- db.h Wed Oct 03 16:23:20 2007 +++ db.h Fri Apr 04 19:13:28 2008 @@ -115,7 +115,7 @@ #ifdef _WIN64 typedef u_int64_t uintptr_t; #else -typedef u_int32_t uintptr_t; +/*typedef u_int32_t uintptr_t;*/ #endif /* @@ -128,7 +128,7 @@ #ifdef _WIN64 typedef int64_t ssize_t; #else -typedef int32_t ssize_t; +/*typedef int32_t ssize_t;*/ #endif /*

      Go to the DB_File distribution directory:

      edit config.in to update the locations and DB name:

      INCLUDE = \strawberry\c\include\db LIB = \strawberry\c\lib DBNAME = -ldb

      Run Makefile.PL, make and make test as normal: