Hi, After updating my system, libmcal broke. This resulted in apache not starting on my system, which was a major disapointment :-( Reproducible: Always Steps to Reproduce: 1. # emerge --deep --update world 2. # /etc/init.d/apache2 start Actual Results: root@caronia plp $ /etc/init.d/apache2 start * Apache2 has detected a syntax error in your configuration files: Syntax error on line 5 of /usr/lib/apache2/conf/modules.d/70_mod_php.conf: Cannot load /usr/lib/apache2/extramodules/libphp4.so into server: /usr/lib/libmcal.so: undefined symbol: pam_end root@caronia plp $ ld /usr/lib/libmcal.so ld: warning: cannot find entry symbol _start; not setting start address /usr/lib/libmcal.so: undefined reference to `pam_end' /usr/lib/libmcal.so: undefined reference to `pam_authenticate' /usr/lib/libmcal.so: undefined reference to `pam_setcred' /usr/lib/libmcal.so: undefined reference to `cc_login' /usr/lib/libmcal.so: undefined reference to `pam_set_item' /usr/lib/libmcal.so: undefined reference to `cc_searched' /usr/lib/libmcal.so: undefined reference to `cc_vlog' /usr/lib/libmcal.so: undefined reference to `cc_vdlog' /usr/lib/libmcal.so: undefined reference to `pam_start' To quick-and-dirty fix this, I had to do: # USE="-pam" emerge libmcal Expected Results: Apache should start. No undefined references in libmcal.so. Here is my info: Portage 2.0.50-r10 (default-x86-2004.0, gcc-3.3.4, glibc-2.3.3.20040420-r1, 2.4.26-gentoo-r6) ================================================================= System uname: 2.4.26-gentoo-r6 i686 Intel(R) Pentium(R) 4 CPU 3.00GHz Gentoo Base System version 1.4.16 ccache version 2.3 [enabled] Autoconf: sys-devel/autoconf-2.59-r4 Automake: sys-devel/automake-1.8.5-r1 ACCEPT_KEYWORDS="x86" AUTOCLEAN="yes" CFLAGS="-O3 -pipe -march=pentium4" CHOST="i686-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 /var/qmail/control" CONFIG_PROTECT_MASK="/etc/gconf /etc/terminfo /etc/env.d" CXXFLAGS="-O3 -pipe -march=pentium4" DISTDIR="/usr/portage/distfiles" FEATURES="autoaddcvs ccache sandbox" GENTOO_MIRRORS="ftp:///ftp-stud.fht-esslingen.de/pub/Mirrors/gentoo/ ftp://mirrors.sec.informatik.tu-darmstadt.de/gentoo/ http://ftp.du.se/pub/os/gentoo http://ftp.lug.ro/gentoo/" MAKEOPTS="-j3" PKGDIR="/usr/portage/packages" PORTAGE_TMPDIR="/var/tmp" PORTDIR="/usr/portage" PORTDIR_OVERLAY="" SYNC="rsync://rsync.gentoo.org/gentoo-portage" USE="X Xaw3d aalib acpi acpi4linux aim alsa apache2 apm arts async avi berkdb bzlib calendar cddb cdr cdrom cgi chroot clanJavaScript clanVoice cpdflib crypt cscope ctype cups curl curlwrappers dbx dga dio directfb divx4linux dnd doc dv dvb dvd dvdr dvdread encode erandom escreen esd exif fastcgi fbcon fbdev fdftk ffmpeg fftw flash flatfile fluidsynth foomaticdb freetds freetype ftp gdbm gif gimp gimpprint glgd glut gphoto2 gpm gs gtk2 gtkhtml iconv icq ieee1394 image imagemagick imlib innodb iodbc jabber java javacomm javadoc javamail javascript jboss jce jdepend jikes jp2 jpeg kde ldap libcaca libg++ libgda libwww log4j lzw lzw-tiff mad matroska mcal md5sum mhash migemo mikmod ming mixer mng mono motif mozilla mozp3p mozsvg mozxmlterm mpeg mpeg4 mplayer msdav msn mssql music mysql mysqli ncurses net netcdf nls nptl odbc offensive ofx oggvorbis ooo-kde openal opengl openssh operanom2 oscar oss pam pcntl pcre pdflib pear-db perl pfpro php plotutils png portaudio posix print pthreads python qdbm qt quicktime quotes readline recode regexp rhino samba sasl sdl servlet-2.3 servlet-2.4 session shaper shared sharedmem simplexml skey slang slp smartcard sndfile soap sockets socks5 sox speedo spell spl ssl stroke svg sysvipc szip tcltk tcpd theora tidy tiff timidity tokenizer transcode transparent-proxy truetype type1 ucs4 unicode usb uudeview v4l v4l2 video_cards_radeon vim-with-x wmf wxwindows x86 xalan xerces xforms xine xml xml2 xmlrpc xmms xprint xsl xv xvid yahoo yaz yv12 zlib zvbi" I'm kind of new to gentoo so, if you need further info to fix this, don't hesidate to contact me :-)
please specify WHAT you upgraded that broken libmcal, and if re-merging libmcal (with your normal USE flags) works.
Same thing here. I upgraded libmcal to the latest release in portage as of August 28th 2004, and mod_php broke. I had "pam" in my USE flags for libmcal and mod_php. Even re-emerging mod_php after mcal update, the compilation dies when building the mcal extension (with some undefined references to pam_***).
please sync and then attach the full output of 'emerge mcal'.
Created attachment 38489 [details] emerge libmcal stdout
Created attachment 38490 [details] emerge libmcal stderr
Sorry for taking so long guys. I was away from computers all weekend. Attached above are the outputs of "emerge libmcal". The problem happens when you try to emerge libmcal without the -pam flag.
pantelis: could I please get the output of /usr/lib/libmcal.so
typod that. ldd /usr/lib/libmcal.so is the output I want
[root@bandwidth root]$ld /usr/lib/libmcal.so ld: warning: cannot find entry symbol _start; not setting start address /usr/lib/libmcal.so: undefined reference to `pam_end' /usr/lib/libmcal.so: undefined reference to `pam_authenticate' /usr/lib/libmcal.so: undefined reference to `pam_setcred' /usr/lib/libmcal.so: undefined reference to `cc_login' /usr/lib/libmcal.so: undefined reference to `pam_set_item' /usr/lib/libmcal.so: undefined reference to `cc_searched' /usr/lib/libmcal.so: undefined reference to `cc_vlog' /usr/lib/libmcal.so: undefined reference to `cc_vdlog' /usr/lib/libmcal.so: undefined reference to `pam_start' [root@bandwidth root]$ldd /usr/lib/libmcal.so libc.so.6 => /lib/libc.so.6 (0x40018000) /lib/ld-linux.so.2 => /lib/ld-linux.so.2 (0x80000000) [root@bandwidth root]$
Same output here, if emerged with pam. With -pam, there are still undefined references, but Apache works OK: root@caronia plp $ emerge libmcal . . . root@caronia plp $ ld /usr/lib/libmcal.so ld: warning: cannot find entry symbol _start; not setting start address /usr/lib/libmcal.so: undefined reference to `cc_login' /usr/lib/libmcal.so: undefined reference to `crypt' /usr/lib/libmcal.so: undefined reference to `cc_searched' /usr/lib/libmcal.so: undefined reference to `cc_vlog' /usr/lib/libmcal.so: undefined reference to `cc_vdlog' root@caronia plp $ USE="-pam" emerge libmcal . . . root@caronia plp $ ld /usr/lib/libmcal.so <same output as Romang's>
Sorry, I forgot about ldd. Output is the same as Romang's in all cases.
Created attachment 38684 [details] Modified libmcal ebuild Please find attached a modified ebuild for libmcal that fixes this problem for me. Robin: what I did was to add a -lpam to the CFLAGS of the library make.
does your fix allow you to successfully compile php as well afterwards?
Both php and mod_php compile and work properly.
fixed in cvs.
closing