cant emerge postfix (both 1.1.xxand 2.xx )with or without ldap support if db-4.xxx is installed can emerge it if I remove sys-libs/db-4 first
Could you attach the output of emerge? While my postfix has been on my system for some while now I never experienced db related problems.
Also please paste your emerge --info output and specify the exact versions of the related packages (db, openldap, postfix) which you're trying to install. Works fine on my end: ike root # qpkg -I -v sys-libs/db sys-libs/db-1.85-r1 * sys-libs/db-3.2.9-r9 * sys-libs/db-4.0.14-r2 * ike root # qpkg -I -v openldap net-nds/openldap-2.0.27-r4 * ike root # qpkg -I -v postfix net-mail/postfix-2.0.16-r1 *
Same thing happens here, without ldap. nc-gentoo root # qpkg -I -v sys-libs/db sys-libs/db-1.85-r1 * sys-libs/db-3.2.9-r10 * sys-libs/db-4.1.25_p1-r3 * sys-libs/db-4.0.14-r2 * Here are the last lines in the compile: gcc -DHAS_PCRE -DUSE_SSL -DUSE_SASL_AUTH -I/usr/include/sasl -DDEF_CONFIG_DIR=\"/etc/postfix\" -DDEF_DAEMON_DIR=\"/usr/lib/postfix\" -DDEF_PROGRAM_DIR=\"/usr/lib/postfix\" -DDEF_MANPAGE_DIR=\"/usr/share/man\" -DDEF_README_DIR=\"/usr/share/doc/postfix-2.0.18/readme\" -DDEF_SAMPLE_DIR=\"/usr/share/doc/postfix-2.0.18/sample\" -g -march=pentium4 -O3 -pipe -fomit-frame-pointer -falign-functions -I. -I../../include -DLINUX2 -c master_flow.c ar rv libmaster.a single_server.o multi_server.o trigger_server.o master_proto.o mail_flow.o ar: creating libmaster.a a - single_server.o a - multi_server.o a - trigger_server.o a - master_proto.o a - mail_flow.o ranlib libmaster.a cp libmaster.a ../../lib/libmaster.a ranlib ../../lib/libmaster.a gcc -DHAS_PCRE -DUSE_SSL -DUSE_SASL_AUTH -I/usr/include/sasl -DDEF_CONFIG_DIR=\"/etc/postfix\" -DDEF_DAEMON_DIR=\"/usr/lib/postfix\" -DDEF_PROGRAM_DIR=\"/usr/lib/postfix\" -DDEF_MANPAGE_DIR=\"/usr/share/man\" -DDEF_README_DIR=\"/usr/share/doc/postfix-2.0.18/readme\" -DDEF_SAMPLE_DIR=\"/usr/share/doc/postfix-2.0.18/sample\" -g -march=pentium4 -O3 -pipe -fomit-frame-pointer -falign-functions -I. -I../../include -DLINUX2 -o master master.o master_conf.o master_ent.o master_sig.o master_avail.o master_spawn.o master_service.o master_status.o master_listen.o master_vars.o master_wakeup.o master_flow.o ../../lib/libglobal.a ../../lib/libutil.a -L/usr/lib -lpcre -ldl -lcrypt -lpthread -lpam -lssl -lcrypto -lsasl2 -ldb -lnsl -lresolv ../../lib/libutil.a(dict_db.o)(.text+0xbe): In function `dict_db_open': //dict_db.c:468: undefined reference to `db_version_4000' ../../lib/libutil.a(dict_db.o)(.text+0x177)://dict_db.c:543: undefined reference to `db_create_4000' collect2: ld returned 1 exit status distcc[11131] ERROR: compile on localhost failed make: *** [master] Error 1 make: *** [update] Error 1 !!! ERROR: net-mail/postfix-2.0.18 failed. !!! Function src_compile, Line 138, Exitcode 2 !!! compile problem
Could you attach the full build log. It seems that libutil.a has been compiled with a version of db that is not db4, or links in something that has been compiled with the headers of db4.0 (but not links against this). Also ls /usr/include/db.h -l should give a symlink to /usr/include/db4.1/db.h
*** Bug 39185 has been marked as a duplicate of this bug. ***
*** Bug 38898 has been marked as a duplicate of this bug. ***
According to bug 38898, the fix is to re-emerge db after which the symlinks are all proper. Can we write this off as a one-time db bug or is the issue deeper than that? Btw, it worked fine here with three db versions emerged and then postfix. The order was: emerge =db-4.0* emerge =db-4.1* emerge postfix All compiled fine: server ~ # qpkg -I -v sys-libs/db sys-libs/db-1.85-r1 * sys-libs/db-3.2.9-r10 * sys-libs/db-4.1.25_p1-r3 * sys-libs/db-4.0.14-r3 * server ~ # qpkg -I -v postfix net-mail/postfix-2.0.18 *
The symlinks should be automatically updated with newer versions of db. Merging or unmerging a current db should fix the links.
ok, closing, thanks Paul and everyone.