[4.1] BerkeleyDB from CPAN - BSD

This is a discussion on [4.1] BerkeleyDB from CPAN - BSD ; Hi, using amavisd/SpamAssassin I need some perl modules, e.g BerkeleyDB. I am used to install all of them from CPAN (perl -MCPAN -e 'install BerkeleyDB'). I have an old machine which I countinually updated from 3.9 to 4.1. Installation of ...

+ Reply to Thread
Results 1 to 5 of 5

Thread: [4.1] BerkeleyDB from CPAN

  1. [4.1] BerkeleyDB from CPAN

    Hi,

    using amavisd/SpamAssassin I need some perl modules, e.g BerkeleyDB. I am
    used to install all of them from CPAN (perl -MCPAN -e 'install BerkeleyDB').

    I have an old machine which I countinually updated from 3.9 to 4.1.
    Installation of BerkeleyDB runs fine from within CPAN.
    Now I installed a machine from scratch and BerkeleyDB fails:

    [...]
    CPAN.pm: Going to build P/PM/PMQS/BerkeleyDB-0.31.tar.gz

    Parsing config.in...
    Looks Good.
    Checking if your kit is complete...
    Looks good
    Note (probably harmless): No library found for -ldb
    Writing Makefile for BerkeleyDB
    CPAN: YAML loaded ok (v0.65)
    cp BerkeleyDB.pm blib/lib/BerkeleyDB.pm
    AutoSplitting blib/lib/BerkeleyDB.pm (blib/lib/auto/BerkeleyDB)
    cp BerkeleyDB/Hash.pm blib/lib/BerkeleyDB/Hash.pm
    cp BerkeleyDB.pod blib/lib/BerkeleyDB.pod
    cp BerkeleyDB/Btree.pm blib/lib/BerkeleyDB/Btree.pm
    /usr/bin/perl /usr/libdata/perl5/ExtUtils/xsubpp -noprototypes -typemap
    /usr/libdata/perl5/ExtUtils/typemap -typemap typemap BerkeleyDB.xs >
    BerkeleyDB.xsc && mv BerkeleyDB.xsc BerkeleyDB.c
    cc -c -I/usr/local/BerkeleyDB/include -fno-strict-aliasing -fno-delete-null-pointer-checks
    -pipe -I/usr/local/include -O2 -DVERSION=\"0.31\" -DXS_VERSION=\"0.31\"
    -DPIC -fPIC "-I/usr/libdata/perl5/i386-openbsd/5.8.8/CORE" BerkeleyDB.c
    BerkeleyDB.xs:74:2: #error db.h is from Berkeley DB 1.x - need at least
    Berkeley DB 2.6.4
    [...]

    I know BerkeleyDB 0.27 is available from ports and currently I am using it
    but I am curious why the compilation via CPAN fails on the new installation
    while an updated machine compiles fine. Both machines have the same ports
    installed, db-4.2.52p11 of course is installed, too.

    This is what the other machine says:

    [...]
    Removing previously used /root/.cpan/build/BerkeleyDB-0.31

    CPAN.pm: Going to build P/PM/PMQS/BerkeleyDB-0.31.tar.gz

    Parsing config.in...
    Looks Good.
    Checking if your kit is complete...
    Looks good
    Writing Makefile for BerkeleyDB
    cp BerkeleyDB.pm blib/lib/BerkeleyDB.pm
    AutoSplitting blib/lib/BerkeleyDB.pm (blib/lib/auto/BerkeleyDB)
    cp BerkeleyDB/Hash.pm blib/lib/BerkeleyDB/Hash.pm
    cp BerkeleyDB.pod blib/lib/BerkeleyDB.pod
    cp BerkeleyDB/Btree.pm blib/lib/BerkeleyDB/Btree.pm
    /usr/bin/perl /usr/libdata/perl5/ExtUtils/xsubpp -noprototypes -typemap
    /usr/libdata/perl5/ExtUtils/typemap -typemap typemap BerkeleyDB.xs >
    BerkeleyDB.xsc && mv BerkeleyDB.xsc BerkeleyDB.c
    cc -c -I/usr/local/BerkeleyDB/include -fno-strict-aliasing -fno-delete-null-pointer-checks
    -pipe -I/usr/local/include -O2 -DVERSION=\"0.31\" -DXS_VERSION=\"0.31\"
    -DPIC -fPIC "-I/usr/libdata/perl5/i386-openbsd/5.8.8/CORE" BerkeleyDB.c
    Running Mkbootstrap for BerkeleyDB ()

    db.h on both machines (/usr/include/db.h) have the same MD5.

    Thanks, Helmut

    --
    Please do not feed my mailbox, Swen still does his job well



  2. Re: [4.1] BerkeleyDB from CPAN

    Helmut Schneider wrote:
    > Hi,
    >
    > using amavisd/SpamAssassin I need some perl modules, e.g BerkeleyDB. I am
    > used to install all of them from CPAN (perl -MCPAN -e 'install BerkeleyDB').


    Any good reason to not just pkg_add spamassassin?

    > I have an old machine which I countinually updated from 3.9 to 4.1.
    > Installation of BerkeleyDB runs fine from within CPAN.
    > Now I installed a machine from scratch and BerkeleyDB fails:
    >
    > [...]
    > CPAN.pm: Going to build P/PM/PMQS/BerkeleyDB-0.31.tar.gz
    >
    > Parsing config.in...
    > Looks Good.
    > Checking if your kit is complete...
    > Looks good
    > Note (probably harmless): No library found for -ldb
    > Writing Makefile for BerkeleyDB
    > CPAN: YAML loaded ok (v0.65)
    > cp BerkeleyDB.pm blib/lib/BerkeleyDB.pm
    > AutoSplitting blib/lib/BerkeleyDB.pm (blib/lib/auto/BerkeleyDB)
    > cp BerkeleyDB/Hash.pm blib/lib/BerkeleyDB/Hash.pm
    > cp BerkeleyDB.pod blib/lib/BerkeleyDB.pod
    > cp BerkeleyDB/Btree.pm blib/lib/BerkeleyDB/Btree.pm
    > /usr/bin/perl /usr/libdata/perl5/ExtUtils/xsubpp -noprototypes -typemap
    > /usr/libdata/perl5/ExtUtils/typemap -typemap typemap BerkeleyDB.xs >
    > BerkeleyDB.xsc && mv BerkeleyDB.xsc BerkeleyDB.c
    > cc -c -I/usr/local/BerkeleyDB/include -fno-strict-aliasing -fno-delete-null-pointer-checks
    > -pipe -I/usr/local/include -O2 -DVERSION=\"0.31\" -DXS_VERSION=\"0.31\"
    > -DPIC -fPIC "-I/usr/libdata/perl5/i386-openbsd/5.8.8/CORE" BerkeleyDB.c
    > BerkeleyDB.xs:74:2: #error db.h is from Berkeley DB 1.x - need at least
    > Berkeley DB 2.6.4
    > [...]


    That's not the proper Berkeley DB. (-ldb fails, db.h is not recognized).

    > I know BerkeleyDB 0.27 is available from ports and currently I am using it
    > but I am curious why the compilation via CPAN fails on the new installation
    > while an updated machine compiles fine. Both machines have the same ports
    > installed, db-4.2.52p11 of course is installed, too.
    >
    > This is what the other machine says:
    >
    > [...]
    > Removing previously used /root/.cpan/build/BerkeleyDB-0.31
    >
    > CPAN.pm: Going to build P/PM/PMQS/BerkeleyDB-0.31.tar.gz
    >
    > Parsing config.in...
    > Looks Good.
    > Checking if your kit is complete...
    > Looks good
    > Writing Makefile for BerkeleyDB
    > cp BerkeleyDB.pm blib/lib/BerkeleyDB.pm
    > AutoSplitting blib/lib/BerkeleyDB.pm (blib/lib/auto/BerkeleyDB)
    > cp BerkeleyDB/Hash.pm blib/lib/BerkeleyDB/Hash.pm
    > cp BerkeleyDB.pod blib/lib/BerkeleyDB.pod
    > cp BerkeleyDB/Btree.pm blib/lib/BerkeleyDB/Btree.pm
    > /usr/bin/perl /usr/libdata/perl5/ExtUtils/xsubpp -noprototypes -typemap
    > /usr/libdata/perl5/ExtUtils/typemap -typemap typemap BerkeleyDB.xs >
    > BerkeleyDB.xsc && mv BerkeleyDB.xsc BerkeleyDB.c
    > cc -c -I/usr/local/BerkeleyDB/include -fno-strict-aliasing -fno-delete-null-pointer-checks
    > -pipe -I/usr/local/include -O2 -DVERSION=\"0.31\" -DXS_VERSION=\"0.31\"
    > -DPIC -fPIC "-I/usr/libdata/perl5/i386-openbsd/5.8.8/CORE" BerkeleyDB.c
    > Running Mkbootstrap for BerkeleyDB ()


    That is.

    > db.h on both machines (/usr/include/db.h) have the same MD5.


    Yes, but the first machine uses /usr/include/db.h (included with
    OpenBSD; see dbopen(3)), and the latter uses /usr/include/local/db4/db.h
    (Berkeley DB 4 from ports).

    I wouldn't know how to fix this, but that is what is happening.

    Joachim

  3. Re: [4.1] BerkeleyDB from CPAN

    In article <5ek2hqF35qin7U1@mid.individual.net>,
    Helmut Schneider wrote:
    >Parsing config.in...
    >Looks Good.
    >Checking if your kit is complete...
    >Looks good
    >Note (probably harmless): No library found for -ldb
    >Writing Makefile for BerkeleyDB
    >CPAN: YAML loaded ok (v0.65)
    >cp BerkeleyDB.pm blib/lib/BerkeleyDB.pm
    >AutoSplitting blib/lib/BerkeleyDB.pm (blib/lib/auto/BerkeleyDB)
    >cp BerkeleyDB/Hash.pm blib/lib/BerkeleyDB/Hash.pm
    >cp BerkeleyDB.pod blib/lib/BerkeleyDB.pod
    >cp BerkeleyDB/Btree.pm blib/lib/BerkeleyDB/Btree.pm
    >/usr/bin/perl /usr/libdata/perl5/ExtUtils/xsubpp -noprototypes -typemap
    >/usr/libdata/perl5/ExtUtils/typemap -typemap typemap BerkeleyDB.xs >
    >BerkeleyDB.xsc && mv BerkeleyDB.xsc BerkeleyDB.c
    >cc -c -I/usr/local/BerkeleyDB/include -fno-strict-aliasing
    >-fno-delete-null-pointer-checks
    > -pipe -I/usr/local/include -O2 -DVERSION=\"0.31\" -DXS_VERSION=\"0.31\"
    > -DPIC -fPIC "-I/usr/libdata/perl5/i386-openbsd/5.8.8/CORE" BerkeleyDB.c
    >BerkeleyDB.xs:74:2: #error db.h is from Berkeley DB 1.x - need at least
    >Berkeley DB 2.6.4
    >[...]
    >
    >I know BerkeleyDB 0.27 is available from ports and currently I am using it
    >but I am curious why the compilation via CPAN fails on the new installation
    >while an updated machine compiles fine. Both machines have the same ports
    >installed, db-4.2.52p11 of course is installed, too.


    That's why the port has some CONFIGURE_ENV...

    >cc -c -I/usr/local/BerkeleyDB/include -fno-strict-aliasing
    >-fno-delete-null-pointer-checks
    > -pipe -I/usr/local/include -O2 -DVERSION=\"0.31\" -DXS_VERSION=\"0.31\"
    > -DPIC -fPIC "-I/usr/libdata/perl5/i386-openbsd/5.8.8/CORE" BerkeleyDB.c
    >Running Mkbootstrap for BerkeleyDB ()
    >
    >db.h on both machines (/usr/include/db.h) have the same MD5.


    So the other machine is using another db.h...

    Have you looked in other interesting places, like /usr/local/BerkeleyDB/include
    or /usr/local/include ?

    You really should clean up whatever you've got on this machine... if you
    install stuff outside the official OpenBSD distribution, you're more or less
    on your own. So start by figuring out which files are different...
    this is fairly simple to do: start with a find / |sort on both machines, and
    compare the results...

  4. Re: [4.1] BerkeleyDB from CPAN

    Joachim Schipper wrote:
    > Helmut Schneider wrote:
    >> using amavisd/SpamAssassin I need some perl modules, e.g BerkeleyDB. I
    >> am used to install all of them from CPAN (perl -MCPAN -e 'install
    >> BerkeleyDB').

    > Any good reason to not just pkg_add spamassassin?


    No good reason. I did my first install using
    http://flakshack.com/anti-spam/wiki/index.php years ago and since then I am
    used to do it with CPAN.

    > Yes, but the first machine uses /usr/include/db.h (included with
    > OpenBSD; see dbopen(3)), and the latter uses /usr/include/local/db4/db.h
    > (Berkeley DB 4 from ports).
    > I wouldn't know how to fix this, but that is what is happening.


    Thanks.

    --
    Please do not feed my mailbox, Swen still does his job well



  5. Re: [4.1] BerkeleyDB from CPAN

    Marc Espie wrote:
    > In article <5ek2hqF35qin7U1@mid.individual.net>,
    > Helmut Schneider wrote:


    [BerkeleyDB from CPAN fails]

    > That's why the port has some CONFIGURE_ENV...


    OK, found that one.

    > You really should clean up whatever you've got on this machine... if you
    > install stuff outside the official OpenBSD distribution, you're more or
    > less on your own. So start by figuring out which files are different...
    > this is fairly simple to do: start with a find / |sort on both machines,
    > and compare the results...


    Actually that's why I install both machines from scratch from time to time.
    But I'll have a look.

    Thanks, Helmut

    --
    Please do not feed my mailbox, Swen still does his job well



+ Reply to Thread