The end of the build is: [...] make[2]: Leaving directory `/usr/src/tmp/portage/pam-0.78-r2/work/Linux-PAM-0.78/modules/pam_xauth' make[1]: Leaving directory `/usr/src/tmp/portage/pam-0.78-r2/work/Linux-PAM-0.78/modules' * Checking if all modules were built... * ERROR: pam_unix have dependencies in /usr. Looking at the image/ generated, the error is actually being wrongly generated: # ldd image/lib/security/pam_unix*.so 2>&1 | grep '/usr/' returns nothing. Looking at the ebuild, I'm not convinced that the check is correct, but I gave up trying to find the definition of get_libdir after greping every file in the portage install and not finding it. :-) phil
I also had this problem. It happens when $PORTAGE_TMPDIR is under /usr. When ldd lists more than one file, the file itself gets listed. I fixed it by adding grep -v '^/' to the chain (ie, I now have -n $(ldd "${sec_dir}/${mod_name}"*.so 2>&1 | grep '/usr/' | \ grep -v 'usr/$(get_libdir)/gcc' | grep -v '^/') as the condition)
I get the same conclusion as most when I attempt to emerge pam-0.78-r1 or pam-0.78-r2. * Checking if all modules were built... * ERROR: pam_unix have dependencies in /usr. !!! ERROR: sys-libs/pam-0.78-r2 failed. !!! Function src_install, Line 297, Exitcode 0 !!! pam_unix have dependencies in /usr. !!! If you need support, post the topmost build error, NOT this status message. Here is what I have from /var/log/portage that seems to be weird: /bin/install -c -m 755 libpam.so /usr/tmp/portage/pam-0.78-r2/image//lib/libpam.so.0.78 n /usr/tmp/portage/pam-0.78-r2/image//lib make[1]: n: Command not found make[1]: [install] Error 127 (ignored) ( cd /usr/tmp/portage/pam-0.78-r2/image//lib ; rm -f libpam.so ; \ ln -sf libpam.so.0 libpam.so ) /bin/install -c -m 644 libpam.a /usr/tmp/portage/pam-0.78-r2/image//lib ... Removed some lines /bin/install -c -m 755 libpamc.so /usr/tmp/portage/pam-0.78-r2/image//lib/libpamc.so.0.78 n /usr/tmp/portage/pam-0.78-r2/image//lib make[1]: n: Command not found make[1]: [install] Error 127 (ignored) ( cd /usr/tmp/portage/pam-0.78-r2/image//lib ; rm -f libpamc.so ; ln -s libpamc.so.0 libpamc.so ) /bin/install -c -m 644 libpamc.a /usr/tmp/portage/pam-0.78-r2/image//lib ... Removed some lines /bin/install -c -m 755 libpam_misc.so /usr/tmp/portage/pam-0.78-r2/image//lib/libpam_misc.so.0.78 n /usr/tmp/portage/pam-0.78-r2/image//lib make[1]: n: Command not found make[1]: [install] Error 127 (ignored) ( cd /usr/tmp/portage/pam-0.78-r2/image//lib ; rm -f libpam_misc.so ; ln -s libpam_misc.so.0 libpam_misc.so ) /bin/install -c -m 644 libpam_misc.a /usr/tmp/portage/pam-0.78-r2/image//lib What I am referring to is these: n /usr/tmp/portage/pam-0.78-r2/image//lib make[1]: n: Command not found make[1]: [install] Error 127 (ignored) What are those. It's almost acting like the something from the makefile is not correct. jt
*** Bug 85069 has been marked as a duplicate of this bug. ***
Seeing this on mips and sparc as well. Any resolution?
Does this work: ----- Index: pam-0.78-r2.ebuild =================================================================== RCS file: /var/cvsroot/gentoo-x86/sys-libs/pam/pam-0.78-r2.ebuild,v retrieving revision 1.2 diff -u -r1.2 pam-0.78-r2.ebuild --- pam-0.78-r2.ebuild 9 Mar 2005 23:57:04 -0000 1.2 +++ pam-0.78-r2.ebuild 13 Mar 2005 21:36:16 -0000 @@ -290,8 +290,9 @@ echo die "${mod_name} module did not build." fi - if [[ -n $(ldd "${sec_dir}/${mod_name}"*.so 2>&1 | grep '/usr/' | \ - grep -v 'usr/$(get_libdir)/gcc') ]] ; then + if [[ -n $(ldd "${sec_dir}/${mod_name}"*.so 2>&1 | \ + grep "/usr/$(get_libdir)/" | \ + grep -v "/usr/$(get_libdir)/gcc") ]] ; then echo eerror "ERROR: ${mod_name} have dependencies in /usr." echo
This patch fixes it here. Tested on sparc and mips.
Added to cvs already.