A newly installed Gentoo 1.4( 20030911 livecd) from GRP packages. After " emerge sync ", I did a " emerge -uv system " update, the openssl-0.9.7c-r1 always fails. the error looks like this: !!! Failed to move /var/tmp/portage-pkg/openssl-0.9.7c-r1/bin/usr/lib/pkgconfig/openssl.pc to /usr/lib/pkgconfig/openssl.pc !!! [Errno 13] Permission denied the actual openssl.pc has the permission " -rw-r--r-- " neither can I remove or unlink the file manually And I did try packaging a tbz2 package from other system, then " emerge -ukv openssl-0.9.7c-r1.tbz2" in the local environment. Still the same error. my "emerge info" prints these: Portage 2.0.49-r15 (default-x86-1.4, gcc-3.3.2, glibc-2.3.2-r9, 2.6.0-test9-mm4) ================================================================= System uname: 2.6.0-test9-mm4 i686 Pentium III (Katmai) Gentoo Base System version 1.4.3.12 distcc 2.11.2 i686-pc-linux-gnu (protocols 1 and 2) (default port 3632) [enabled] ccache version 2.3 [enabled] ACCEPT_KEYWORDS="x86 ~x86" AUTOCLEAN="yes" CFLAGS="-O3 -march=pentium3 -fprefetch-loop-arrays -funroll-loops -pipe" CHOST="i686-pc-linux-gnu" COMPILER="gcc3" CONFIG_PROTECT="/etc /var/qmail/control /usr/share/config /usr/kde/2/share/config /usr/kde/3/share/config" CONFIG_PROTECT_MASK="/etc/gconf /etc/env.d" CXXFLAGS="-O3 -march=pentium3 -fprefetch-loop-arrays -funroll-loops -pipe" DISTDIR="/usr/portage/distfiles" FEATURES="sandbox autoaddcvs ccache distcc" GENTOO_MIRRORS="http://ftp1.fudan.edu.cn http://ftp1.fudan.edu.cn/dist-lack ftp://ftp.tsinghua.edu.cn/mirror/gentoo" MAKEOPTS="-j5" PKGDIR="/usr/portage/packages" PORTAGE_TMPDIR="/var/tmp" PORTDIR="/usr/portage" PORTDIR_OVERLAY="" SYNC="rsync://ftp1.fudan.edu.cn/gentoo-portage" USE="x86 oss apm avi crypt cups encode foomaticdb gif imlib jpeg libg++ libwww mad mikmod motif mpeg ncurses nls oggvorbis opengl pdflib png quicktime sdl spell svga truetype xml2 xmms xv zlib gdbm berkdb readline tcpd pam ssl perl python cscope -X -slang -gtk -gnome -alsa -java -qt -arts -kde -gpm" Reproducible: Always Steps to Reproduce: 1. 2. 3.
please fsck your system
OK, I found the problem. it is not a file system corrupt reason. the originall stage3 tarball seems to set the /usr/lib/pkgconfig directory's permission to " drw-r--r--", which would cause a permission error when deleting any file in that directory. and so does the openssl package, where the "openssl.pc" reside in /var/tmp/portage/openssl-0.9.7c-r1/image/usr/lib/pkgconfig. I just manually added a "x" permission to both /usr/lib/pkgconfig and /var/tmp/portage/openssl-0.9.7c-r1/image/usr/lib/pkgconfig( exactly after "ebuild install" before" ebuild qmerge". now the package is installed.
*** Bug 34286 has been marked as a duplicate of this bug. ***
I could be incorrect about this, but I believe the sequence is: compile install merge chmod u+x /usr/lib/pkgconfig chmod u+x /var/tmp/portage-pkg/openssl-0.9.7c-r1/bin/usr/lib/pkgconfig qmerge Worked for me. I wonder if there isn't anything that can be done to prevent this problem? It looks like the pkgconfig directory in /var/tmp/ gets created with rw- permissions every time.
*** Bug 35451 has been marked as a duplicate of this bug. ***
going to have the release guys double check their stuff
release peeps, could you make sure comment #2 is fixed in all the current tarballs
SpanKY -- I think part of the problem lies somewhere in the ebuild/source tarball for openssl. Every time I emerge openssl (after the 'install' step I believe, I don't recall), /var/tmp/portage/openssl-0.9.7c-r1/image/usr/lib/pkgconfig *always* gets *created* with rw- permissions. Even with proper permissions on usr/lib/pkgconfig I still get this problem. Thanks for looking into this =)
Please see http://bugs.gentoo.org/attachment.cgi?id=22227&action=view - sorry I submitted to the duplicate. The attachment is an ebuild that has a quick hack to fix the missing execute permission on the /usr/lib/pkgconfig/. This ebuild compiles, installs and qmerges without a problem.
ok, the openssl ebuild has been fixed ... tarball makers, could you make sure your end is fixed too ?
its fixed on our end