Public bug reported: Building (or crossbuilding) pam (with dpkg-buildpackage -B) fails with a set of undefined reference to `__db_ndbm_*' errors.
This is due to db not have the compatibility layer unless --enable-dbm is set in the db package. I don't know if this is a changed default from ealier versions of db or if in fact this should be fixed by getting pam not to use this interface anymore, but for now this seems simplest. I noticed this doing the arm64 bootstrap but I don't think there is anything arm-specific about it, given that the test below fails. I don't know why this doesn't show up normally. I presume that the normal db configuration implies --enable-dbm, but the stage1 config used in http://people.debian.org/~wookey/bootstrap/ubunturepo/pool/main/d/db/db_5.1.29-5ubuntu6profile1_source.changes (which turns off the java and python and tcl bindings) implies --disable-dbm Turning --enable-dbm on explicitly makes things work. Here is a small test case $ cat test.c #define DB_DBM_HSEARCH 1 #include <db.h> int main(void) { DBM *db = dbm_open("/dev/null", 0, 0600); return 0; } $ gcc -ldb test.c /tmp/ccvbSNOF.o: In function `main': test.c:(.text+0x18): undefined reference to `__db_ndbm_open' collect2: ld returned 1 exit status ** Affects: db (Ubuntu) Importance: Undecided Status: New ** Affects: pam (Ubuntu) Importance: Undecided Status: New ** Tags: arm64 patch ** Patch added: "db_5.1.29-5ubuntu6-fix-pam-enable-dbm.patch" https://bugs.launchpad.net/bugs/1126392/+attachment/3530290/+files/db_5.1.29-5ubuntu6-fix-pam-enable-dbm.patch -- You received this bug notification because you are a member of Ubuntu Bugs, which is subscribed to Ubuntu. https://bugs.launchpad.net/bugs/1126392 Title: pam doesn't cross-build due to missing --enable-dbm in db To manage notifications about this bug go to: https://bugs.launchpad.net/ubuntu/+source/db/+bug/1126392/+subscriptions -- ubuntu-bugs mailing list [email protected] https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs
