Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 65014 - Portage screws up DEPEND order: pam had DEPEND on cracklib, but cracklib is not installed before pam.
Summary: Portage screws up DEPEND order: pam had DEPEND on cracklib, but cracklib is n...
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: New packages (show other bugs)
Hardware: x86 Linux
: High normal (vote)
Assignee: Portage team
URL:
Whiteboard:
Keywords: Bug
Depends on: 33440
Blocks:
  Show dependency tree
 
Reported: 2004-09-22 14:03 UTC by Pablo Yanez Trujillo
Modified: 2004-09-23 01:56 UTC (History)
1 user (show)

See Also:
Package list:
Runtime testing required: ---


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Pablo Yanez Trujillo 2004-09-22 14:03:07 UTC
while "emerge system" the configure proc. of sys-libs/pam-0.77 stops with the error "checking path to cracklib dictionary... configure: error: none found". Cracklib is not installed and will be installed by emerge system 3 packages after sys-libs/pam.

Reproducible: Always
Steps to Reproduce:
1.
2.
3.




If you install cracklib (emerge sys-libs/cracklib) or edit the pam ebuild on
/usr/portage/sys-libs/pam/pam-0.77.ebuild with

DEPEND="$RDEPEND
    dev-lang/perl
    sys-libs/cracklib
    =dev-libs/glib-1.2*
    >=sys-devel/autoconf-2.58
    >=sys-devel/automake-1.6
    >=sys-devel/flex-2.5.4a-r5
    pwdb? ( >=sys-libs/pwdb-0.62 )"


My emerge info:

Portage 2.0.50-r11 (default-x86-2004.0, gcc-3.3.4, glibc-2.3.3.20040420-r1, 2.6.
7-gentoo-r14)
=================================================================
System uname: 2.6.7-gentoo-r14 i686 
Gentoo Base System version 1.4.16
Autoconf: sys-devel/autoconf-2.59-r4
Automake: sys-devel/automake-1.8.5-r1
ACCEPT_KEYWORDS="x86"
AUTOCLEAN="yes"
CFLAGS="-O3 -mcpu=i686 -funroll-loops -pipe"
CHOST="i486-pc-linux-gnu"
COMPILER=""
CONFIG_PROTECT="/etc /usr/X11R6/lib/X11/xkb /usr/kde/2/share/config /usr/kde/3.
2/share/config /usr/kde/3/share/config /usr/lib/mozilla/defaults/pref /usr/
share/config /usr/share/texmf/dvipdfm/config/ /usr/share/texmf/dvips/config/ /
usr/share/texmf/tex/generic/config/ /usr/share/texmf/tex/platex/config/ /usr/
share/texmf/xdvi/ /var/qmail/control"
CONFIG_PROTECT_MASK="/etc/gconf /etc/terminfo /etc/env.d"
CXXFLAGS="-O3 -mcpu=i686 -funroll-loops -pipe"
DISTDIR="/usr/portage/distfiles"
FEATURES="autoaddcvs ccache keepwork sandbox"
GENTOO_MIRRORS="http://gentoo.inode.at/ ftp://gentoo.inode.at/source/ ftp://ftp.
easynet.nl/mirror/gentoo/ http://ftp.easynet.nl/mirror/gentoo/"
MAKEOPTS="-j2"
PKGDIR="/media/cdrom"
PORTAGE_TMPDIR="/var/tmp"
PORTDIR="/usr/portage"
PORTDIR_OVERLAY=""
SYNC="rsync://rsync.europe.gentoo.org/gentoo-portage"
USE="alsa apm arts avi berkdb bitmap-fonts cdr crypt cups dvd encode foomaticdb 
gdbm gif gpm gtk2 imlib jpeg libg++ libwww mad mikmod motif mpeg ncurses nls 
oggvorbis opengl oss pam pdflib perl png python quicktime readline sdl slang 
spell ssl svga tcpd truetype x86 xml2 xmms xprint xv zlib"
Comment 1 Robin Johnson archtester Gentoo Infrastructure gentoo-dev Security 2004-09-22 19:19:22 UTC
That's an error in emerge then.

cracklib is definetly specified under the DEPEND system and therefore should be put in before pam.

Could you include emerge -p output that shows it wanting to install pam before cracklib?
Comment 2 Jason Stubbs (RETIRED) gentoo-dev 2004-09-22 20:06:29 UTC
sys-libs/pam:        RDEPEND="sys-libs/cracklib"
sys-libs/cracklib:    DEPEND="sys-apps/miscfiles"
sys-apps/miscfiles:   DEPEND="sys-libs/glibc"
sys-libs/glibc:      RDEPEND="sys-apps/baselayout"
sys-apps/baselayout: RDEPEND="sys-apps/util-linux"
sys-apps/util-linux:  DEPEND="sys-apps/pam-login"
sys-apps/pam-login:   DEPEND="sys-libs/pam"

I haven't included versions and have resolved virtuals, but this is essentially the "cause". Portage doesn't not differentiate between DEPEND and RDEPEND, and also ignores any deps as soon as a circular dependency is found. Circular dependency resolution will be supported portage 2.0.51.
Comment 3 Robin Johnson archtester Gentoo Infrastructure gentoo-dev Security 2004-09-22 20:19:12 UTC
jstubbs: I don't see any reason that miscfiles needs glibc, so this could be cut off right there.
Comment 4 Jason Stubbs (RETIRED) gentoo-dev 2004-09-22 22:27:08 UTC
That won't be enough to solve this bug. For example, there is also sys-libs/cracklib -> sys-apps/portage -> sys-apps/sed -> sys-libs/glibc. The inter-dependencies within system are very intricate and there's many unlisted ones as well. If you want to remove some deps until portage supports the complexity, I'm fine with that.
Comment 5 Robin Johnson archtester Gentoo Infrastructure gentoo-dev Security 2004-09-22 22:51:08 UTC
I've removed the libc dep for now, after talking to the embedded folk that added it.

Pablo: emerge sync and it should work for you, but to cut down on errors in general, go with the .51 series of portage.
Comment 6 Pablo Yanez Trujillo 2004-09-23 00:18:58 UTC
I've merged cracklib yesterday before installing pam, and it worked (after having the problem, of course), that's why I made this bug report.
Comment 7 Jason Stubbs (RETIRED) gentoo-dev 2004-09-23 01:56:19 UTC
Err.. I somehow missed a word which changed the meaning.

Circular dependency resolution will be supported AFTER portage 2.0.51. I have the code already but it's to late in the game to add it in for 2.0.51.