Lately, even after a fresh emerge sync, an emerge system during an install produces an out of order compilation of pam and xfree and xfree fails. Reproducible: Always Steps to Reproduce: I have attached the emerge -pv system and two other emerge -p runs. The first one contains an "emerge -pv pwdb cracklib pam" run which gets pam and xfree out of order and the second contains an "emerge -pv pwdb cracklib db pam" run which gets them in the correct order. Here are my USE flags: USE="acl acpi berkdb crypt cups curl doc emacs fam fastcgi flash foomaticdb gd gdbm gif imap imlib innodb java jikes jpeg kerberos ldap libg++ libwww mbox mmx mysql ncurses nls odbc pam ppds pdflib perl plotutils png postgres python readline ruby samba sasl shadow spell sse ssl tcltk tcpd tiff usb xml xml2 zlib"
Created attachment 23280 [details] the output from emerge -pv system
Created attachment 23281 [details] output from emerge -pv pwdb cracklib pam
Created attachment 23282 [details] output from emerge -pv pwdb cracklib db pam
Interesting...if I run "emerge -pv epm gentoolkit", the packages come out in an order that will work. I discovered this because when I tried to run "emerge -v db pam", pam was merged before db and pam needs db so *that* wouldn't work. Here is the "emerge -pv epm gentoolkit" output: cosmos portage # emerge -p epm gentoolkit These are the packages that I would merge, in order: Calculating dependencies ...done! [ebuild N ] app-portage/epm-0.8.4 [ebuild N ] dev-java/java-config-1.1.7 [ebuild N ] dev-java/blackdown-jdk-1.4.1 [ebuild N ] dev-lang/tcl-8.3.4 [ebuild U ] sys-libs/db-4.0.14-r2 [1.85-r1] [ebuild N ] sys-libs/pam-0.75-r11 [ebuild N ] x11-base/xfree-4.3.0-r3 [ebuild N ] dev-lang/tk-8.3.4-r1 [ebuild N ] dev-lang/python-2.2.3-r5 [ebuild N ] dev-util/dialog-0.9_beta20031002 [ebuild N ] sys-apps/grep-2.5.1-r1 [ebuild N ] app-portage/gentoolkit-0.1.37
Oops, that was only "emerge -p epm gentoolkit". This is the "emerge -pv epm gentoolkit": cosmos portage # emerge -pv epm gentoolkit These are the packages that I would merge, in order: Calculating dependencies ...done! [ebuild N ] app-portage/epm-0.8.4 [ebuild N ] dev-java/java-config-1.1.7 [ebuild N ] dev-java/blackdown-jdk-1.4.1 +doc [ebuild N ] dev-lang/tcl-8.3.4 [ebuild U ] sys-libs/db-4.0.14-r2 [1.85-r1] +tcltk +java +doc [ebuild N ] sys-libs/pam-0.75-r11 +berkdb -selinux [ebuild N ] x11-base/xfree-4.3.0-r3 -3dfx +sse +mmx -3dnow +xml2 +truetype +nls -cjk +doc -ipv6 -debug -static +pam -sdk -gatos [ebuild N ] dev-lang/tk-8.3.4-r1 [ebuild N ] dev-lang/python-2.2.3-r5 +ncurses +gdbm +readline +tcltk +berkdb -build +doc +ssl [ebuild N ] dev-util/dialog-0.9_beta20031002 [ebuild N ] sys-apps/grep-2.5.1-r1 +nls -build [ebuild N ] app-portage/gentoolkit-0.1.37
xfree is required cause of tk (tcltk flag)
Martin, that is true, but the problem is not that X is being compiled. Rather, the problem is that X is being compiled *before* pam but it *requires* pam. That is the crux of the problem. So I had to be creative and find a way to get it to go in the proper order, but I had to use trial and error. If I weren't that enterprising and I was just trying gentoo for the first time, I would be very disillusioned as getting the install order of packages and dependencies right is a very critical for first-time users. Thanks again for a great product in gentoo! --Jason
I think the problem is more fundamental. emerge -e system (as part of a stage1 install) consistently tries to install "pam-login" prior to installing its dependency "pam". This breaks "emerge -e system" completely, and makes the stage1 installations instructions more or less useless. The workaround is to 1) emerge -e system (...until it breaks) 2) emerge pam-login (this will pull in the correct dependencies, stragely enough) 3) emerge -d system (again...this time it will work). Obviously there is something very broken in the dependecies themselves, or in how emerge -e system parses and organizes them. Either way, its a repeatable bug that needs fixing.
*** This bug has been marked as a duplicate of 16365 ***