Hi Neil, This problem has come up a few times on the list lately, and we know that the source of it is incompatibilities between different versions of the berkeley db api. The Cfengine build scripts use a different api if bdb version is less than 4.1, by defining CF_OLD_DB. So it seems like during configure, the build scripts seem to think that you have version less than 4.1 (or some other error might have occured), while you really have a greater version during compile.
A quick fix for you is to run configure, then edit "src/conf.h", where you should find "define CF_OLD_DB 1". Comment out or delete this line, then run make (don't run configure again first). I would however like to know what really happened here, so if you have time, could you please send me your config.log, and compile, run, and give me the output of the following program: --- #include <stdlib.h> #include <db.h> #include <stdio.h> int main(void) { printf("%d.%d.%d \n",DB_VERSION_MAJOR,DB_VERSION_MINOR,DB_VERSION_PATCH); if (DB_VERSION_MAJOR < 4 || (DB_VERSION_MAJOR == 4 && DB_VERSION_MINOR < 1)) { exit(1); } else { exit(0); } } --- (with "gcc test.c -I/usr/local/BerkeleyDB.4.7/include"). Thanks. --- Best regards, Eystein nwat...@symcor.com wrote: > Following my previous work on compiling cf3 on x86 solaris I'm trying to > duplicate my work on sparc solaris. Alas I get the following error: > libtool: compile: gcc -DHAVE_CONFIG_H -I. > -I/usr/local/BerkeleyDB.4.7/include -I/usr/sfw/include -D_REENTRANT > -pthreads -I/usr/local//include -g -O2 -Wreturn-type -Wmissing-prototypes > -Wuninitialized -D_REENTRANT -pthreads -g -O2 > -I/usr/local/BerkeleyDB.4.7/include -D_LARGEFILE_SOURCE > -D_FILE_OFFSET_BITS=64 -D_REENTRANT -pthreads -g -O2 > -I/usr/local/BerkeleyDB.4.7/include -D_LARGEFILE_SOURCE > -D_FILE_OFFSET_BITS=64 -MT libpromises_la-instrumentation.lo -MD -MP -MF > .deps/libpromises_la-instrumentation.Tpo -c instrumentation.c -o > libpromises_la-instrumentation.o > instrumentation.c: In function `OpenDB': > instrumentation.c:426: warning: passing arg 2 of pointer to function from > incompatible pointer type > instrumentation.c:426: warning: passing arg 4 of pointer to function makes > pointer from integer without a cast > instrumentation.c:426: error: too few arguments to function > gmake[2]: *** [libpromises_la-instrumentation.lo] Error 1 > gmake[2]: Leaving directory `/home/nwatson/src/cfengine-3.0.2/src' > gmake[1]: *** [all] Error 2 > gmake[1]: Leaving directory `/home/nwatson/src/cfengine-3.0.2/src' > gmake: *** [all-recursive] Error 1 > > I thought there might be multiple Berkeley DBs installed but I don't see > any. > -bash-3.00$ find /usr -name 'libdb*' > /usr/share/man/man3libucb/libdbm.3libucb > /usr/lib/sparcv9/libdb.so.1 > /usr/lib/sparcv9/libdb_java.so > /usr/lib/sparcv9/libdb_java.so.1 > /usr/lib/krb5/libdb2.so > /usr/lib/krb5/libdb2.so.1 > find: cannot read dir /usr/lib/cc-cfw: Permission denied > find: cannot read dir /usr/lib/scn/bin: Permission denied > find: cannot read dir /usr/lib/scn/lib: Permission denied > /usr/lib/apoc/libdb.so.1 > /usr/lib/apoc/libdb_java-4.2.so > /usr/lib/libdb.so.1 > /usr/lib/libdb_java.so > /usr/lib/libdb_java.so.1 > /usr/sfw/lib/mysql/libdbug.a > /usr/X11/lib/modules/extensions/libdbe.so > /usr/ucblib/libdbm.so > /usr/ucblib/sparcv9/libdbm.so > /usr/ucblib/sparcv9/libdbm.so.1 > /usr/ucblib/libdbm.so.1 > find: cannot read dir /usr/aset: Permission denied > /usr/staroffice7/program/libdb-4.2.so > /usr/staroffice7/program/libdb_java-4.2.so > /usr/staroffice7/program/libdba645ss.so > /usr/staroffice7/program/libdbase645ss.so > /usr/staroffice7/program/libdbext645ss.so > /usr/staroffice7/program/libdbi645ss.so > /usr/staroffice7/program/libdbp645ss.so > /usr/staroffice7/program/libdbpool2.so > /usr/staroffice7/program/libdbtools2.so > /usr/staroffice7/program/libdbu645ss.so > find: cannot read dir /usr/bb/bb19c/.ssh: Permission denied > find: cannot read dir /usr/bb/bb19c/.sunw: Permission denied > /usr/local/BerkeleyDB.4.7/lib/libdb-4.7.a > /usr/local/BerkeleyDB.4.7/lib/libdb-4.7.la > /usr/local/BerkeleyDB.4.7/lib/libdb-4.7.so > /usr/local/BerkeleyDB.4.7/lib/libdb-4.so > /usr/local/BerkeleyDB.4.7/lib/libdb.a > /usr/local/BerkeleyDB.4.7/lib/libdb.so > > Checking config.log I see no evidence that anything other that the > /usr/local Berekely was found. What could I have missed? > > Sincerely, > -- > Neil Watson > 416-673-3465 > > > ------------------------------------------------------------------------ > > > > CONFIDENTIALITY WARNING > This communication, including any attachments, is for the exclusive use of > addressee and may contain proprietary and/or confidential information. If you > are not the intended recipient, any use, copying, disclosure, dissemination > or distribution is strictly prohibited. If you are not the intended > recipient, please notify the sender immediately by return e-mail, delete this > communication and destroy all copies. > > AVERTISSEMENT RELATIF À LA CONFIDENTIALITÉ > Ce message, ainsi que les pièces qui y sont jointes, est destiné à l’usage > exclusif de la personne à laquelle il s’adresse et peut contenir de > l’information personnelle ou confidentielle. Si le lecteur de ce message n’en > est pas le destinataire, nous l’avisons par la présente que toute diffusion, > distribution, reproduction ou utilisation de son contenu est strictement > interdite. Veuillez avertir sur-le-champ l’expéditeur par retour de courrier > électronique et supprimez ce message ainsi que toutes les pièces jointes. > > > ------------------------------------------------------------------------ > > _______________________________________________ > Help-cfengine mailing list > Help-cfengine@cfengine.org > https://cfengine.org/mailman/listinfo/help-cfengine _______________________________________________ Help-cfengine mailing list Help-cfengine@cfengine.org https://cfengine.org/mailman/listinfo/help-cfengine