emerge -vp gawk this morning pulled in gawk-3.1.4-r2 changelog indicates that xmlgawk support has been added: this requires linking with libexpat libexpat is installed in /usr/lib -> this dir is not available at boot time when rebooting the system, /sbin/rc fails at its first invocation of awk -> because, of course, it can't find libexpat.so Reproducible: Always Steps to Reproduce: 1.have libexpat installed 2.emerge -vp gawk 3.reboot Actual Results: first time awk is used by /sbin/rc (to check /etc/fstab for devfs), it fails, saying that it requires libexpat.so and can't find it - this causes a series of follow on errors... you'll get the gentoo message about requiring either devfs or udev and "press enter or boot continues in 15 secs" and then boot hangs after a series of "/etc/init.d/softlink/<xyz> Expected Results: two possibilities for emerging correctly: a) not include xmlgawk (which is what pulls in the libexpat dependency) b) copy the libexpat libs to /lib (this is what i did after rebooting using an emergency boot cd: just copied all the /usr/lib/*expat* libs, created the appropriate symlinks, updated libexpat.la w/ the appropriate dir - and i was up w/o a problem after that) ashu@liberte:/etc/runlevels$ emerge info Portage 2.0.51-r15 (default-linux/x86/2004.3, gcc-3.4.3, glibc-2.3.4.20041102-r0, 2.6.10-gentoo-r7 i686) ================================================================= System uname: 2.6.10-gentoo-r7 i686 Intel(R) Pentium(R) M processor 1700MHz Gentoo Base System version 1.6.9 Python: dev-lang/python-2.3.4-r1 [2.3.4 (#1, Feb 7 2005, 14:16:38)] dev-lang/python: 2.3.4-r1 sys-devel/autoconf: 2.59-r6, 2.13 sys-devel/automake: 1.8.5-r3, 1.5, 1.4_p6, 1.6.3, 1.7.9, 1.9.4 sys-devel/binutils: 2.15.92.0.2-r2 sys-devel/libtool: 1.5.10-r4 virtual/os-headers: 2.6.8.1-r2 ACCEPT_KEYWORDS="x86 ~x86" AUTOCLEAN="yes" CFLAGS="-O3 -pipe -march=pentium-m -mtune=pentium-m -mfpmath=sse,387 -mmmx -msse -msse2 -minline-all-stringops -momit-leaf-frame-pointer -frename-registers -fno-ident -fomit-frame-pointer -fweb -ftracer" CHOST="i686-pc-linux-gnu" CONFIG_PROTECT="/opt/openjms/config /usr/kde/3.3/env /usr/kde/3.3/share/config /usr/kde/3.3/shutdown /usr/lib/X11/xkb /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/bind" CONFIG_PROTECT_MASK="/etc/gconf /etc/terminfo /etc/env.d" CXXFLAGS="-O3 -pipe -march=pentium-m -mtune=pentium-m -mfpmath=sse,387 -mmmx -msse -msse2 -minline-all-stringops -momit-leaf-frame-pointer -frename-registers -fno-ident -fomit-frame-pointer -fweb -ftracer" DISTDIR="/scratch/portage/distfiles" FEATURES="autoaddcvs autoconfig ccache distlocks sandbox sfperms userpriv" GENTOO_MIRRORS="ftp://gentoo.mirrors.pair.com/ http://gentoo.mirrors.pair.com/ ftp://gentoo.netnitco.net/pub/mirrors/gentoo/source/ http://gentoo.netnitco.net ftp://ftp.gtlib.cc.gatech.edu/pub/gentoo http://gentoo.chem.wisc.edu/gentoo/ ftp://gentoo.chem.wisc.edu/gentoo/ http://mirror.clarkson.edu/pub/distributions/gentoo/ http://mirror.datapipe.net/gentoo http://mirror.datapipe.net/gentoo http://www.gigaload.org/gentoo.org/ http://gentoo.binarycompass.org http://ftp-mirror.internap.com/pub/gentoo/ http://csociety-ftp.ecn.purdue.edu/pub/gentoo/ ftp://csociety-ftp.ecn.purdue.edu/pub/gentoo/ " LANG="C" LC_ALL="C" MAKEOPTS="-j2" PKGDIR="/scratch/portage/packages" PORTAGE_TMPDIR="/scratch/tmp" PORTDIR="/scratch/portage" SYNC="rsync://rsync.gentoo.org/gentoo-portage" USE="x86 X X509 Xaw3d a52 aalib acl acpi adns aim alsa antlr apache2 apm arts artswrappersuid artworkextra ati atm audio audiofile authdaemond avi bash-completion bcel beanutils berkdb bfsv4 bigger-fonts bindist bitmap-fonts bluetooth bonobo bsh bzip2 bzlib c++ calendar caps cdda cddb cdio cdparanoia cdr client commonslogging commonsnet cpdflib cracklib crypt cscope ctype cups curl curlwrappers dba dbm dbx dga dio divx4linux djbfft dlloader doc dts dv dvb dvd dvdr dvdread ecc edl eds emacs emacs-w3 encode erandom esd ethereal evo exif f77 faad fam fame fastcgi fbcon fdftk ffmpeg fftw flac flash flatfile font-server foomaticdb fortran freetds freetype ftp fusion g++ g77 gb gcj gd gdbm ggi gif gimp gimp-print gimpprint ginac gjava glut gmp gnat gnokii gnome gnutls gobjc gphoto2 gpm gps gsm gstreamer gtk gtk2 gtkhtml guile hal howl httpd iconv icq idea ieee1394 imagemagick imap imlib inifile innodb insecure-drivers iodbc ipv6 irda ithreads jabber jack java javamail javascript jdepend jikes jms jmx joystick jpeg jpeg2k jsch junit jython kde kdeenablefinal kerberos krb4 ladcca lcms ldap leim libcaca libedit libg++ libgda libwww lirc log4j lzo lzw-tiff mad maildir mailwrapper mbox mcal mcve mhash mikmod milter mime ming mjpeg mmap mmx mmx2 mng motif mozcalendar mozcompose mozdevelop mozilla mozirc mozmail mozsvg mozxft mozxmlterm mp3 mp4 mpeg mpeg2 mpi msn multicall mysql mythtv nas ncurses netcdf network nls nntp nptl nptlonly oav objc odbc offensive ogg oggvorbis openal opengl oro oscar oss pam pcmcia pcntl pcre pda pdflib perl perlsuid pg-hier pg-intdatetime pg-vacuumdelay php pic pie plotutils png pnp portaudio posix postgres povray ppds prelude python qdbm qt quicktime radeon readline real recode regexp rhino rtc ruby samba sasl scanner sdl sendmail server session sftplogging shared sharedmem silc simplexml slang slp sms smux sndfile snmp soap sockets speex spell spl sqlite sse sse2 ssl stream svg svga sysvipc szip tcltk tcpd tetex theora threads tidy tiff tokenizer tpctlir truetype truetype-fonts trusted type1-fonts unicode usb userlocales v4l v4l2 vcd vdesktop vhosts video videos vim-with-x vlm vorbis wddx wifi wmf wxwindows xalan xanim xerces xface xine xinerama xml xml2 xmlrpc xmms xosd xpm xprint xscreensaver xsl xv xvid xvmc yahoo yaz zeo zlib" Unset: ASFLAGS, CBUILD, CTARGET, LDFLAGS, PORTDIR_OVERLAY
I too found I was unable to boot my system this morning due to a missing libexpat.so.0. Please, either remove this dependancy from gawk or install libexpat to /lib so that awk can find it at boot time. This will of course only affect ppl with /usr as a seperate partition but I would think that is a common enough configuration.
This happened to me to (/ is on hda3 and /usr is on hda5). Thank <insert deity> for LiveCDs!... Copying the expat libs from /usr/lib to /lib seems to fix it. Though that seems to be a dirty dirty kludge, it works for now ... =/
Perhaps xmlgawk can be added as a seperate ebuild? so that way the normal (g)awk works...well, normally?
I just thought of something: perhaps since awk is so vitally important in the startup scripts it should be statically linked to the expat library if the xml USE flag is set? Hm...
I offered to agriffis that I would submit a patch to remove the use of awk in /sbin/rc . I think that would be a better solution than hacking up other stuff.
If there is a simpler fix by all means lets do it. But removing awk would be simple enough in this case.
*** This bug has been marked as a duplicate of 81793 ***