After doing an update world today i get new xscreensaver ebuild and, sys-libs/pam-0.74-r9 is listed as a dependancy of x11-misc/xscreensaver-4.06 and will not compile, below is a listing of the steps i followed and the output. ----------------%< begin code listing >%------------------- # emerge -p -u world These are the packages that I would merge, in order. Calculating world dependencies ...done! [ebuild U ] sys-libs/pam-0.75-r9 [ebuild U ] x11-misc/xscreensaver-4.06 # emerge -u world Calculating world dependencies ...done! >>> emerge sys-libs/pam-0.75-r9 to / >>> md5 ;-) Linux-PAM-0.75.tar.gz >>> md5 ;-) pam-0.75-r9-gentoo.tbz2 >>> Unpacking source... >>> Unpacking Linux-PAM-0.75.tar.gz >>> Unpacking pam-0.75-r9-gentoo.tbz2 * Applying various patches (bugfixes/updates)... * pam-0.75-mdkconf.patch.bz2... * pam-0.75-headers.patch.bz2... * pam-0.75-accessdoc.patch.bz2... * pam-0.75-build.patch.bz2... * pam-0.75-cached.patch.bz2... * pam-0.75-const.patch.bz2... * pam-0.75-linkage.patch.bz2... * pam-0.75-mandir.patch.bz2... * pam-0.75-primary.patch.bz2... * pam-0.75-prompt.patch.bz2... * pam-0.75-return.patch.bz2... * pam-0.75-security.patch.bz2... * pam-0.75-string.patch.bz2... * pam-0.75-typo.patch.bz2... * pam-0.75-trust.patch.bz2... * pam-0.75-userdb.patch.bz2... * pam-0.75-wheeldoc.patch.bz2... * pam-0.75-wrap.patch.bz2... * pam-0.75-cracklib-distance.patch.bz2... * pam-0.75-group-reinit.patch.bz2... * pam-0.75-lastlog-utmp.patch.bz2... * pam-0.75-limits-locks.patch.bz2... * pam-0.75-null.patch.bz2... * pam-0.75-sigchld.patch.bz2... * pam-0.75-pwdb-compare.patch.bz2... * pam-0.75-securetty-pts.patch.bz2... * pam-0.75-securetty-fail.patch.bz2... * pam-0.75-syntax.patch.bz2... * pam-0.75-time.patch.bz2... * pam-0.75-issue.patch.bz2... * pam-0.75-doc-rhl.patch.bz2... * pam-0.75-bigcrypt-main.patch.bz2... * pam-0.75-cracklib-init.patch.bz2... * pam-0.75-filter-comments.patch.bz2... * pam-0.75-unixdoc.patch.bz2... * pam-0.75-unix-loop.patch.bz2... * pam-0.75-unix-preserve.patch.bz2... * pam-0.75-unix-retval.patch.bz2... * pam-0.75-unix-brokenshadow.patch.bz2... * pam-0.75-unix-nis.patch.bz2... * pam-0.75-unix-nullok.patch.bz2... * pam-0.75-wheel-usertouser.patch.bz2... * pam-0.75-mkhomedir-recurse.patch.bz2... * pam-0.75-limits-root.patch.bz2... * pam-0.75-issue-seg.patch.bz2... * pam-0.75-listfile-tty.patch.bz2... * pam-0.75-tally-init.patch.bz2... * pam-0.75-rhosts-plus.patch.bz2... * pam-0.75-limits-retval.patch.bz2... * pam-0.75-reentrant.patch.bz2... * pam-0.75-macros.patch.bz2... * pam-0.75-unix-log_success.patch.bz2... * pam-0.75-misc-err.patch.bz2... * pam-0.74-loop.patch.bz2... * pam-0.75-console-dead-x.patch.bz2... * Linux-PAM-0.75-devfsd.patch.bz2... * Linux-PAM-0.75-console-reset.patch.bz2... * pam-0.75-xauth-unix.patch.bz2... * pam-0.75-lib64.patch.bz2... * pam-0.75-pam_group-confile.patch.bz2... * pam-0.75-pam_wheel-segfault.patch.bz2... * pam-0.75-pam_console-fix-fullpath-in-file-classes.patch.bz2... * Unpacking docs... >>> Source unpacked. configure: WARNING: If you wanted to set the --build type, don't use --host. If a cross compiler is detected then cross compile mode will be used. checking for a BSD-compatible install... /bin/install -c checking for i686-pc-linux-gnu-gcc... gcc checking for C compiler default output... a.out checking whether the C compiler works... yes checking whether we are cross compiling... no checking for suffix of executables... checking for suffix of object files... o checking whether we are using the GNU C compiler... yes checking whether gcc accepts -g... yes checking for gcc option to accept ANSI C... none needed checking for bison... bison -y checking for flex... flex checking for yywrap in -lfl... yes checking lex output file root... lex.yy checking whether yytext is a pointer... yes checking whether ln -s works... yes checking whether make sets ${MAKE}... yes checking how to run the C preprocessor... gcc -E checking for egrep... grep -E checking for ANSI C header files... yes checking for sys/types.h... yes checking for sys/stat.h... yes checking for stdlib.h... yes checking for string.h... yes checking for memory.h... yes checking for strings.h... yes checking for inttypes.h... yes checking for stdint.h... yes checking for unistd.h... yes checking paths.h usability... yes checking paths.h presence... yes checking for paths.h... yes checking for __libc_sched_setscheduler in -lc... no checking for lckpwdf in -lc... yes checking for dlopen in -ldl... yes checking for FascistCheck in -lcrack... yes checking for crypt in -lcrypt... yes checking for logwtmp in -lutil... yes checking for dbm_store in -lndbm... yes checking for __db_ndbm_fetch in -ldb... yes checking for yylex in -lfl... no checking for yp_maplist in -lnsl... yes checking for pwdb_db_name in -lpwdb... yes checking for dirent.h that defines DIR... yes checking for library containing opendir... none required checking for ANSI C header files... (cached) yes checking for sys/wait.h that is POSIX.1 compatible... yes checking fcntl.h usability... yes checking fcntl.h presence... yes checking for fcntl.h... yes checking limits.h usability... yes checking limits.h presence... yes checking for limits.h... yes checking malloc.h usability... yes checking malloc.h presence... yes checking for malloc.h... yes checking sys/file.h usability... yes checking sys/file.h presence... yes checking for sys/file.h... yes checking sys/ioctl.h usability... yes checking sys/ioctl.h presence... yes checking for sys/ioctl.h... yes checking sys/time.h usability... yes checking sys/time.h presence... yes checking for sys/time.h... yes checking syslog.h usability... yes checking syslog.h presence... yes checking for syslog.h... yes checking termio.h usability... yes checking termio.h presence... yes checking for termio.h... yes checking for unistd.h... (cached) yes checking features.h usability... yes checking features.h presence... yes checking for features.h... yes checking crypt.h usability... yes checking crypt.h presence... yes checking for crypt.h... yes checking ndbm.h usability... yes checking ndbm.h presence... yes checking for ndbm.h... yes checking db.h usability... yes checking db.h presence... yes checking for db.h... yes checking lastlog.h usability... yes checking lastlog.h presence... yes checking for lastlog.h... yes checking utmp.h usability... yes checking utmp.h presence... yes checking for utmp.h... yes checking utmpx.h usability... yes checking utmpx.h presence... yes checking for utmpx.h... yes checking path to cracklib dictionary... /usr/lib/cracklib_dict checking whether byte ordering is bigendian... no checking for an ANSI C-conforming const... yes checking for uid_t in sys/types.h... yes checking for off_t... yes checking for pid_t... yes checking for size_t... yes checking whether time.h and sys/time.h may both be included... yes checking whether struct tm is in sys/time.h or time.h... time.h checking type of array argument to getgroups... gid_t checking whether gcc needs -traditional... no checking for working memcmp... yes checking for vprintf... yes checking for _doprnt... no checking for gethostname... yes checking for gettimeofday... yes checking for mkdir... yes checking for select... yes checking for strcspn... yes checking for strdup... yes checking for strerror... yes checking for strspn... yes checking for strstr... yes checking for strtol... yes checking for uname... yes checking for sgml2txt... no checking for sgml2html... no checking for sgml2latex... no checking for sgml2ps... no configure: creating ./config.status config.status: creating Make.Rules config.status: creating _pam_aconf.h rm -f security ln -sf . security make -C modules all make[1]: Entering directory `/var/tmp/portage/pam-0.75-r9/work/Linux-PAM-0.75/modules' modules sources available are: pam_access pam_deny pam_group pam_listfile pam_motd pam_radius pam_shells pam_time pam_warn pam_chroot pam_env pam_issue pam_localuser pam_nologin pam_rhosts pam_stack pam_timestamp pam_wheel pam_console pam_filter pam_lastlog pam_mail pam_permit pam_rootok pam_stress pam_unix pam_xauth pam_cracklib pam_ftp pam_limits pam_mkhomedir pam_pwdb pam_securetty pam_tally pam_userdb :-------- make[2]: Entering directory `/var/tmp/portage/pam-0.75-r9/work/Linux-PAM-0.75/modules/pam_access' gcc -march=pentium4 -O3 -pipe -mmmx -msse -msse2 -funroll-loops -fomit-frame-pointer -fPIC -Wall -Wwrite-strings -Wpointer-arith -Wcast-qual -Wcast-align -Wstrict-prototypes -Wmissing-prototypes -Wnested-externs -Winline -Wshadow -Dlinux -I./include -I/var/tmp/portage/pam-0.75-r9/work/Linux-PAM-0.75/libpam/include -I/var/tmp/portage/pam-0.75-r9/work/Linux-PAM-0.75 -I/var/tmp/portage/pam-0.75-r9/work/Linux-PAM-0.75/libpamc/include -DDEFAULT_CONF_FILE=\"//etc/security/access.conf\" -DNIS -DPAM_DYNAMIC -c pam_access.c -o dynamic/pam_access.o gcc -shared -Xlinker -x -o pam_access.so dynamic/pam_access.o -lnsl -lc make[2]: Leaving directory `/var/tmp/portage/pam-0.75-r9/work/Linux-PAM-0.75/modules/pam_access' make[2]: Entering directory `/var/tmp/portage/pam-0.75-r9/work/Linux-PAM-0.75/modules/pam_chroot' gcc -march=pentium4 -O3 -pipe -mmmx -msse -msse2 -funroll-loops -fomit-frame-pointer -fPIC -Wall -Wwrite-strings -Wpointer-arith -Wcast-qual -Wcast-align -Wstrict-prototypes -Wmissing-prototypes -Wnested-externs -Winline -Wshadow -Dlinux -I./include -I/var/tmp/portage/pam-0.75-r9/work/Linux-PAM-0.75/libpam/include -I/var/tmp/portage/pam-0.75-r9/work/Linux-PAM-0.75 -I/var/tmp/portage/pam-0.75-r9/work/Linux-PAM-0.75/libpamc/include -DPAM_DYNAMIC -c pam_chroot.c -o dynamic/pam_chroot.o gcc -shared -Xlinker -x -o pam_chroot.so dynamic/pam_chroot.o -lc make[2]: Leaving directory `/var/tmp/portage/pam-0.75-r9/work/Linux-PAM-0.75/modules/pam_chroot' make[2]: Entering directory `/var/tmp/portage/pam-0.75-r9/work/Linux-PAM-0.75/modules/pam_console' bison -d -p _pc_yy config.y config.y:127: warning: previous rule lacks an ending `;' config.y contains 1 shift/reduce conflict. sh ./sed-static config.tab.c flex -Cr -oconfig.lex.c -P_pc_yy config.l sh ./sed-static config.lex.c gcc -march=pentium4 -O3 -pipe -mmmx -msse -msse2 -funroll-loops -fomit-frame-pointer -fPIC -Wall -Wwrite-strings -Wpointer-arith -Wcast-qual -Wcast-align -Wstrict-prototypes -Wmissing-prototypes -Wnested-externs -Winline -Wshadow -Dlinux -I./include -I/var/tmp/portage/pam-0.75-r9/work/Linux-PAM-0.75/libpam/include -I/var/tmp/portage/pam-0.75-r9/work/Linux-PAM-0.75 -I/var/tmp/portage/pam-0.75-r9/work/Linux-PAM-0.75/libpamc/include -I/usr/include/glib-1.2 -I/usr/lib/glib/include -D_GNU_SOURCE -DLOCKDIR=\"/var/run/console\" -DPAM_DYNAMIC -c pam_console.c -o dynamic/pam_console.o In file included from pam_console.c:26: ../../_pam_aconf.h:23:1: warning: "_GNU_SOURCE" redefined pam_console.c:1:1: warning: this is the location of the previous definition In file included from pam_console.c:28: /usr/include/glib-1.2/glib.h:1697: warning: declaration of `index' shadows a global declaration <built-in>:0: warning: shadowed declaration is here /usr/include/glib-1.2/glib.h:1703: warning: declaration of `index' shadows a global declaration <built-in>:0: warning: shadowed declaration is here /usr/include/glib-1.2/glib.h:1705: warning: declaration of `index' shadows a global declaration <built-in>:0: warning: shadowed declaration is here /usr/include/glib-1.2/glib.h:1719: warning: declaration of `index' shadows a global declaration <built-in>:0: warning: shadowed declaration is here /usr/include/glib-1.2/glib.h:1721: warning: declaration of `index' shadows a global declaration <built-in>:0: warning: shadowed declaration is here /usr/include/glib-1.2/glib.h:1745: warning: declaration of `index' shadows a global declaration <built-in>:0: warning: shadowed declaration is here /usr/include/glib-1.2/glib.h:1747: warning: declaration of `index' shadows a global declaration <built-in>:0: warning: shadowed declaration is here /usr/include/glib-1.2/glib.h:2319: warning: declaration of `index' shadows a global declaration <built-in>:0: warning: shadowed declaration is here In file included from pam_console.c:505: /usr/share/bison/bison.simple:379: warning: static declaration for `_pc_yyparse' follows non-static config.y: In function `_pc_yyparse': config.y:103: warning: char format, void arg (arg 4) /usr/share/bison/bison.simple:799: warning: passing arg 1 of `_pc_yyerror' discards qualifiers from pointer target type /usr/share/bison/bison.simple:924: warning: passing arg 1 of `_pc_yyerror' discards qualifiers from pointer target type gcc -shared -Xlinker -x -o pam_console.so dynamic/pam_console.o -L/usr/lib -lglib -lc gcc -march=pentium4 -O3 -pipe -mmmx -msse -msse2 -funroll-loops -fomit-frame-pointer -fPIC -Wall -Wwrite-strings -Wpointer-arith -Wcast-qual -Wcast-align -Wstrict-prototypes -Wmissing-prototypes -Wnested-externs -Winline -Wshadow -Dlinux -I./include -I/var/tmp/portage/pam-0.75-r9/work/Linux-PAM-0.75/libpam/include -I/var/tmp/portage/pam-0.75-r9/work/Linux-PAM-0.75 -I/var/tmp/portage/pam-0.75-r9/work/Linux-PAM-0.75/libpamc/include -I/usr/include/glib-1.2 -I/usr/lib/glib/include -D_GNU_SOURCE -DLOCKDIR=\"/var/run/console\" -DPAM_DYNAMIC -c pam_console_apply_devfsd.c -o dynamic/pam_console_apply_devfsd.oIn file included from pam_console_apply_devfsd.c:6: /usr/include/glib-1.2/glib.h:1697: warning: declaration of `index' shadows a global declaration <built-in>:0: warning: shadowed declaration is here /usr/include/glib-1.2/glib.h:1703: warning: declaration of `index' shadows a global declaration <built-in>:0: warning: shadowed declaration is here /usr/include/glib-1.2/glib.h:1705: warning: declaration of `index' shadows a global declaration <built-in>:0: warning: shadowed declaration is here /usr/include/glib-1.2/glib.h:1719: warning: declaration of `index' shadows a global declaration <built-in>:0: warning: shadowed declaration is here /usr/include/glib-1.2/glib.h:1721: warning: declaration of `index' shadows a global declaration <built-in>:0: warning: shadowed declaration is here /usr/include/glib-1.2/glib.h:1745: warning: declaration of `index' shadows a global declaration <built-in>:0: warning: shadowed declaration is here /usr/include/glib-1.2/glib.h:1747: warning: declaration of `index' shadows a global declaration <built-in>:0: warning: shadowed declaration is here /usr/include/glib-1.2/glib.h:2319: warning: declaration of `index' shadows a global declaration <built-in>:0: warning: shadowed declaration is here pam_console_apply_devfsd.c:52: warning: no previous prototype for `pam_console_apply_single' pam_console_apply_devfsd.c: In function `pam_console_apply_single': pam_console_apply_devfsd.c:54: warning: unused variable `c' In file included from regerr.c:5, from pam_console_apply_devfsd.c:100: ../../_pam_aconf.h:23:1: warning: "_GNU_SOURCE" redefined pam_console_apply_devfsd.c:1:1: warning: this is the location of the previous definition In file included from pam_console_apply_devfsd.c:104: /usr/share/bison/bison.simple: At top level: /usr/share/bison/bison.simple:379: warning: static declaration for `_pc_yyparse' follows non-static config.y: In function `_pc_yyparse': config.y:103: warning: char format, void arg (arg 4) /usr/share/bison/bison.simple:799: warning: passing arg 1 of `_pc_yyerror' discards qualifiers from pointer target type /usr/share/bison/bison.simple:924: warning: passing arg 1 of `_pc_yyerror' discards qualifiers from pointer target type gcc -shared -Xlinker -x -o pam_console_apply_devfsd.so dynamic/pam_console_apply_devfsd.o -Wl,-Bstatic -L/usr/lib -lglib -Wl,-Bdynamic -lc gcc -march=pentium4 -O3 -pipe -mmmx -msse -msse2 -funroll-loops -fomit-frame-pointer -fPIC -Wall -Wwrite-strings -Wpointer-arith -Wcast-qual -Wcast-align -Wstrict-prototypes -Wmissing-prototypes -Wnested-externs -Winline -Wshadow -Dlinux -I./include -I/var/tmp/portage/pam-0.75-r9/work/Linux-PAM-0.75/libpam/include -I/var/tmp/portage/pam-0.75-r9/work/Linux-PAM-0.75 -I/var/tmp/portage/pam-0.75-r9/work/Linux-PAM-0.75/libpamc/include -I/usr/include/glib-1.2 -I/usr/lib/glib/include -D_GNU_SOURCE -DLOCKDIR=\"/var/run/console\" -o pam_console_apply pam_console_apply.c -Wl,-Bstatic -L/usr/lib -lglib -Wl,-Bdynamic -lc In file included from pam_console_apply.c:5: ../../_pam_aconf.h:23:1: warning: "_GNU_SOURCE" redefined pam_console_apply.c:1:1: warning: this is the location of the previous definition In file included from pam_console_apply.c:7: /usr/include/glib-1.2/glib.h:1697: warning: declaration of `index' shadows a global declaration <built-in>:0: warning: shadowed declaration is here /usr/include/glib-1.2/glib.h:1703: warning: declaration of `index' shadows a global declaration <built-in>:0: warning: shadowed declaration is here /usr/include/glib-1.2/glib.h:1705: warning: declaration of `index' shadows a global declaration <built-in>:0: warning: shadowed declaration is here /usr/include/glib-1.2/glib.h:1719: warning: declaration of `index' shadows a global declaration <built-in>:0: warning: shadowed declaration is here /usr/include/glib-1.2/glib.h:1721: warning: declaration of `index' shadows a global declaration <built-in>:0: warning: shadowed declaration is here /usr/include/glib-1.2/glib.h:1745: warning: declaration of `index' shadows a global declaration <built-in>:0: warning: shadowed declaration is here /usr/include/glib-1.2/glib.h:1747: warning: declaration of `index' shadows a global declaration <built-in>:0: warning: shadowed declaration is here /usr/include/glib-1.2/glib.h:2319: warning: declaration of `index' shadows a global declaration <built-in>:0: warning: shadowed declaration is here In file included from pam_console_apply.c:120: /usr/share/bison/bison.simple:379: warning: static declaration for `_pc_yyparse' follows non-static config.y: In function `_pc_yyparse': config.y:103: warning: char format, void arg (arg 4) /usr/share/bison/bison.simple:799: warning: passing arg 1 of `_pc_yyerror' discards qualifiers from pointer target type /usr/share/bison/bison.simple:924: warning: passing arg 1 of `_pc_yyerror' discards qualifiers from pointer target type /usr/lib/libglib.a(gstrfuncs.o)(.text+0x712): In function `g_strdown': : undefined reference to `__ctype_tolower' /usr/lib/libglib.a(gstrfuncs.o)(.text+0x780): In function `g_strup': : undefined reference to `__ctype_toupper' /usr/lib/libglib.a(gstrfuncs.o)(.text+0x1043): In function `g_strchug': : undefined reference to `__ctype_b' /usr/lib/libglib.a(gstrfuncs.o)(.text+0x110f): In function `g_strchomp': : undefined reference to `__ctype_b' /usr/lib/libglib.a(gstrfuncs.o)(.text+0x1130): In function `g_strchomp': : undefined reference to `__ctype_b' /usr/lib/libglib.a(gstring.o)(.text+0x531): In function `g_string_down': : undefined reference to `__ctype_tolower' /usr/lib/libglib.a(gstring.o)(.text+0x5a9): In function `g_string_up': : undefined reference to `__ctype_toupper' collect2: ld returned 1 exit status make[2]: *** [pam_console_apply] Error 1 make[2]: Leaving directory `/var/tmp/portage/pam-0.75-r9/work/Linux-PAM-0.75/modules/pam_console' make[1]: *** [all] Error 1 make[1]: Leaving directory `/var/tmp/portage/pam-0.75-r9/work/Linux-PAM-0.75/modules' make: *** [modules] Error 2 !!! ERROR: The ebuild did not complete successfully. !!! Function src_compile, Line 101, Exitcode 2 !!! Failed to build ----------------%< end code listing >%------------------- This seems to be an error with glib: /usr/lib/libglib.a(gstrfuncs.o)(.text+0x712). Let me know what's up.
did your glibc versions switch around recently?
I remember now upgrading my glibc a few days ago so I did an `emerge -p -C glibc` to see what I had installed and it says both 2.3.1 and 2.2.5-r7 are on my system. How can I determine which version is getting used, and/or switch between versions; I assume 2.3 would break API compatability with 2.2. Since I did an `emerge -u world` with the newer version of glibc, shouldn't there only be a single copy?
do an (re)emerge on glib-1.2.10-r4.ebuild ie. 'emerge /usr/portage/dev-libs/glib-1.2.10-r4.ebuild' then an (re)emerge on glib-2.0.6-r1.ebuild ie. 'emerge glib' or 'emerge /usr/portage/dev-libs/glib-2.0.6-r1.ebuild' or any other appropriate way you feel like doing this... that should fix your issue with pam. if you updated to glibc 2.3.1 you'll have this problem until you recompile the aforementioned with the new glibc... plus your other static libs will be needed recompiled as well. if you're to stay will 2.3.1 better fix them as well. regards, _j_
I haver this problem and rebuilding glib doesn't help me. Maybe try to recompile all static libs & then see.
After upgrading to glibc-2.3.1, I followed Comment #3 (re-emerge both version of glib). Pam emerged fine after that.
OK, I had only compiled glib 2, not glib 1. Doing that fixed it for me.
yay happy pam people :)
*** Bug 9712 has been marked as a duplicate of this bug. ***