in reply to Re: 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"?
  • Comment on Re^2: Problems with the installation of DB_File in WindowsXP

Replies are listed 'Best First'.
Re^3: Problems with the installation of DB_File in WindowsXP
by Anonymous Monk on Nov 18, 2011 at 12:28 UTC

    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

      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: