---------------------------------------------------------------------- Libraries have been installed in: /var/tmp/portage/mod_php-4.3.5/work/php-4.3.5/modules If you ever happen to want to link against installed libraries in a given directory, LIBDIR, you must either use libtool, and specify the full pathname of the library, or use the `-LLIBDIR' flag during linking and do at least one of the following: - add LIBDIR to the `LD_LIBRARY_PATH' environment variable during execution - add LIBDIR to the `LD_RUN_PATH' environment variable during linking - use the `-Wl,--rpath -Wl,LIBDIR' linker flag - have your system administrator add LIBDIR to `/etc/ld.so.conf' See any operating system documentation about shared libraries for more information, such as the ld(1) and ld.so(8) manual pages. ---------------------------------------------------------------------- /usr/lib/libcom_err.a(error_message.o)(.bss+0x0): multiple definition of `_et_list' /usr/lib/libkrb5.a(com_err.o)(.bss+0x0): first defined here /usr/lib/libcom_err.a(error_message.o)(.text+0x0): In function `error_message': : multiple definition of `error_message' /usr/lib/libkrb5.a(com_err.o)(.text+0x0): first defined here /usr/lib/gcc-lib/i686-pc-linux-gnu/3.3.3/../../../../i686-pc-linux-gnu/bin/ld: Warning: size of symbol `error_message' changed from 232 in /usr/lib/libkrb5.a(com_err.o) to 295 in /usr/lib/libkrb5.a(com_err.o) /usr/lib/libcom_err.a(error_message.o)(.text+0x1f0): In function `add_to_error_table': : multiple definition of `add_to_error_table' /usr/lib/libkrb5.a(com_err.o)(.text+0x3b0): first defined here /usr/lib/gcc-lib/i686-pc-linux-gnu/3.3.3/../../../../i686-pc-linux-gnu/bin/ld: Warning: size of symbol `add_to_error_table' changed from 114 in /usr/lib/libkrb5.a(com_err.o) to 84 in /usr/lib/libkrb5.a(com_err.o) /usr/lib/libcom_err.a(et_name.o)(.text+0x0): In function `error_table_name': : multiple definition of `error_table_name' /usr/lib/libkrb5.a(com_err.o)(.text+0x300): first defined here /usr/lib/gcc-lib/i686-pc-linux-gnu/3.3.3/../../../../i686-pc-linux-gnu/bin/ld: Warning: size of symbol `error_table_name' changed from 167 in /usr/lib/libkrb5.a(com_err.o) to 101 in /usr/lib/libkrb5.a(com_err.o) /usr/lib/libcom_err.a(init_et.o)(.text+0x0): In function `init_error_table': : multiple definition of `init_error_table' /usr/lib/libkrb5.a(com_err.o)(.text+0xf0): first defined here /usr/lib/gcc-lib/i686-pc-linux-gnu/3.3.3/../../../../i686-pc-linux-gnu/bin/ld: Warning: size of symbol `init_error_table' changed from 107 in /usr/lib/libkrb5.a(com_err.o) to 101 in /usr/lib/libkrb5.a(com_err.o) /usr/lib/libcom_err.a(com_err.o)(.text+0x0): In function `com_err': : multiple definition of `com_err' /usr/lib/libkrb5.a(com_err.o)(.text+0x1d0): first defined here /usr/lib/gcc-lib/i686-pc-linux-gnu/3.3.3/../../../../i686-pc-linux-gnu/bin/ld: Warning: size of symbol `com_err' changed from 102 in /usr/lib/libkrb5.a(com_err.o) to 58 in /usr/lib/libkrb5.a(com_err.o) /usr/lib/libcom_err.a(com_err.o)(.text+0x40): In function `com_err_va': : multiple definition of `com_err_va' /usr/lib/libkrb5.a(com_err.o)(.text+0x160): first defined here /usr/lib/gcc-lib/i686-pc-linux-gnu/3.3.3/../../../../i686-pc-linux-gnu/bin/ld: Warning: size of symbol `com_err_va' changed from 104 in /usr/lib/libkrb5.a(com_err.o) to 41 in /usr/lib/libkrb5.a(com_err.o) /usr/lib/libcom_err.a(com_err.o)(.text+0x70): In function `set_com_err_hook': : multiple definition of `set_com_err_hook' /usr/lib/libkrb5.a(com_err.o)(.text+0x240): first defined here /usr/lib/gcc-lib/i686-pc-linux-gnu/3.3.3/../../../../i686-pc-linux-gnu/bin/ld: Warning: size of symbol `set_com_err_hook' changed from 93 in /usr/lib/libkrb5.a(com_err.o) to 29 in /usr/lib/libkrb5.a(com_err.o) /usr/lib/libcom_err.a(com_err.o)(.text+0x90): In function `reset_com_err_hook': : multiple definition of `reset_com_err_hook' /usr/lib/libkrb5.a(com_err.o)(.text+0x2a0): first defined here /usr/lib/gcc-lib/i686-pc-linux-gnu/3.3.3/../../../../i686-pc-linux-gnu/bin/ld: Warning: size of symbol `reset_com_err_hook' changed from 82 in /usr/lib/libkrb5.a(com_err.o) to 20 in /usr/lib/libkrb5.a(com_err.o) /usr/lib/libcom_err.a(com_right.o)(.text+0x0): In function `com_right': : multiple definition of `com_right' /usr/lib/libkrb5.a(error.o)(.text+0x0): first defined here /usr/lib/gcc-lib/i686-pc-linux-gnu/3.3.3/../../../../i686-pc-linux-gnu/bin/ld: Warning: size of symbol `com_right' changed from 132 in /usr/lib/libkrb5.a(error.o) to 56 in /usr/lib/libkrb5.a(error.o) /usr/lib/libcom_err.a(com_right.o)(.text+0x40): In function `initialize_error_table_r': : multiple definition of `initialize_error_table_r' /usr/lib/libkrb5.a(error.o)(.text+0x90): first defined here /usr/lib/gcc-lib/i686-pc-linux-gnu/3.3.3/../../../../i686-pc-linux-gnu/bin/ld: Warning: size of symbol `initialize_error_table_r' changed from 150 in /usr/lib/libkrb5.a(error.o) to 89 in /usr/lib/libkrb5.a(error.o) /usr/lib/libcom_err.a(com_right.o)(.text+0xa0): In function `free_error_table': : multiple definition of `free_error_table' /usr/lib/libkrb5.a(error.o)(.text+0x130): first defined here /usr/lib/gcc-lib/i686-pc-linux-gnu/3.3.3/../../../../i686-pc-linux-gnu/bin/ld: Warning: size of symbol `free_error_table' changed from 94 in /usr/lib/libkrb5.a(error.o) to 38 in /usr/lib/libkrb5.a(error.o) collect2: ld returned 1 exit status distcc[5951] ERROR: compile on localhost failed make: *** [libphp4.la] Error 1 make: *** Waiting for unfinished jobs.... /usr/lib/libcom_err.a(error_message.o)(.bss+0x0): multiple definition of `_et_list' /usr/lib/libkrb5.a(com_err.o)(.bss+0x0): first defined here /usr/lib/libcom_err.a(error_message.o)(.text+0x0): In function `error_message': : multiple definition of `error_message' /usr/lib/libkrb5.a(com_err.o)(.text+0x0): first defined here /usr/lib/gcc-lib/i686-pc-linux-gnu/3.3.3/../../../../i686-pc-linux-gnu/bin/ld: Warning: size of symbol `error_message' changed from 232 in /usr/lib/libkrb5.a(com_err.o) to 295 in /usr/lib/libkrb5.a(com_err.o) /usr/lib/libcom_err.a(error_message.o)(.text+0x1f0): In function `add_to_error_table': : multiple definition of `add_to_error_table' /usr/lib/libkrb5.a(com_err.o)(.text+0x3b0): first defined here /usr/lib/gcc-lib/i686-pc-linux-gnu/3.3.3/../../../../i686-pc-linux-gnu/bin/ld: Warning: size of symbol `add_to_error_table' changed from 114 in /usr/lib/libkrb5.a(com_err.o) to 84 in /usr/lib/libkrb5.a(com_err.o) /usr/lib/libc-client.a(osdep.o)(.text+0x9f5f): In function `ssl_onceonlyinit': : warning: the use of `tmpnam' is dangerous, better use `mkstemp' /usr/lib/libswf.a(swfimage.o)(.text+0x672): In function `swf_definebitmap': : warning: the use of `mktemp' is dangerous, better use `mkstemp' collect2: ld returned 1 exit status distcc[3249] ERROR: compile on localhost failed make: *** [sapi/cli/php] Error 1 !!! ERROR: dev-php/mod_php-4.3.5 failed. !!! Function php-sapi_src_compile, Line 474, Exitcode 2 !!! compile problem Same behaviour without distcc. Johnny Reproducible: Always Steps to Reproduce: 1. emerge mod_php 2. 3. Portage 2.0.50-r1 (default-x86-1.4, gcc-3.3.3, glibc-2.3.3_pre20040207-r0, 2.6.4-gentoo-r1) ================================================================= System uname: 2.6.4-gentoo-r1 i686 mobile AMD Athlon(tm) XP 2500+ Gentoo Base System version 1.4.3.13p1 distcc 2.12.1 i686-pc-linux-gnu (protocols 1 and 2) (default port 3632) [enabled] ccache version 2.3 [enabled] Autoconf: sys-devel/autoconf-2.59-r3 Automake: sys-devel/automake-1.8.3 ACCEPT_KEYWORDS="x86 ~x86" AUTOCLEAN="yes" CFLAGS="-O3 -march=athlon-xp -funroll-loops -pipe" CHOST="i686-pc-linux-gnu" COMPILER="gcc3" CONFIG_PROTECT="/etc /lib/modules /usr/X11R6/lib/X11/xkb /usr/kde/2/share/config /usr/kde/3.1/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/bind /var/qmail/control /var/vpopmail/domains /var/vpopmail/etc" CONFIG_PROTECT_MASK="/etc/afs/C /etc/afs/afsws /etc/gconf /etc/terminfo /etc/env.d" CXXFLAGS="-O3 -march=athlon-xp -funroll-loops -pipe" DISTDIR="/usr/portage/distfiles" FEATURES="autoaddcvs buildpkg ccache distcc sandbox" GENTOO_MIRRORS="ftp://sunsite.informatik.rwth-aachen.de/pub/Linux/gentoo http://www.ibiblio.org/pub/Linux/distributions/gentoo http://gentoo.oregonstate.edu" MAKEOPTS="-j6" PKGDIR="/usr/portage/packages" PORTAGE_TMPDIR="/var/tmp" PORTDIR="/usr/portage" PORTDIR_OVERLAY="/usr/local/portage" SYNC="rsync://rsync.gentoo.org/gentoo-portage" USE="X Xaw3d aalib acl acpi afs alsa apache2 apm arts avi berkdb bonobo cdr crypt cscope cups curl dga directfb doc dvd emacs encode esd ethereal evo fbcon firebird flash foomaticdb freetds gb gd gdbm ggi gif gnome gphoto2 gpm gps gstreamer gtk gtk2 gtkhtml guile imap imlib informix innodb ipv6 jack java jikes joystick jpeg kde kerberos ladcca lcm ldap leim libg++ libgda libwww lirc mad maildir mbox mcal memlimit mikmod mmx motif mozilla mpeg mpi mule mysql nas ncurses nhc98 nls oci8 odbc oggvorbis opengl oss pam pcmcia pda pdflib perl plotutils png pnp postgres ppds prelude python qt quicktime readline ruby ruby18 samba sasl scanner sdl slang slp snmp socks5 spell ssl svga tcltk tcpd tetex tiff truetype usb wmf wxwindows x86 xface xinerama xml2 xmms xosd xv zeo zlib"
your kerberos is broken. use revdep-rebuild
I used revdep-rebuild a few times, but it didn't fix that issue. Reemerging app-crypt/mit-krb5 didn't solve the problem. Johnny
wranglers: pass this on to the kerberos people hans: is /usr/lib/libcom_err.a from mit-krb5? if not, find it's package and recompile it as well.
# qpkg -f /usr/lib/libcom_err.a app-crypt/heimdal * sys-fs/e2fsprogs * I recompiled both, but no change. Johnny
well, I emerged both with USE="-kerberos" It worked, but there might be a bug out there. Johnny
Started installing gentoo 3 Days ago and experiencing the same troubles. So this seemes to be a more general issue and not just johnny's problem. USE="-kerberos" emerge php mod_php works but is just a workaround. The same problem occours with every v. 4.x ebuild of php currently in portage so it seemes to be based on something else... mfg Nomike
wranglers: why did you pass this back to php ? it's a kerberos library issue, not a problem with php.
I can successfully compile heimdel 0.6 and php w/ heimdal support with the configuration at the bottom of this post. For those of you having problems are you using a stable glibc and gcc? Portage 2.0.50-r1 (default-x86-1.4, gcc-3.3.2, glibc-2.3.2-r9, 2.4.24) ================================================================= System uname: 2.4.24 i686 AMD Athlon(tm) XP 2100+ Gentoo Base System version 1.4.3.13 distcc 2.9 i686-pc-linux-gnu (protocols 1 and 2) (default port 3632) [disabled] ccache version 2.3 [enabled] Autoconf: sys-devel/autoconf-2.58-r1 Automake: sys-devel/automake-1.7.7 ACCEPT_KEYWORDS="x86" AUTOCLEAN="yes" CFLAGS="-O2 -mcpu=i686 -pipe" CHOST="i686-pc-linux-gnu" COMPILER="gcc3" CONFIG_PROTECT="/etc /usr/X11R6/lib/X11/xkb /usr/kde/2/share/config /usr/kde/3.1/share/config /usr/kde/3.2/share/config /usr/kde/3/share/config /usr/share/config /usr/share/texmf/tex/generic/config/ /usr/share/texmf/tex/platex/config/ /var/qmail/control" CONFIG_PROTECT_MASK="/etc/gconf /etc/terminfo /etc/env.d" CXXFLAGS="-O2 -mcpu=i686 -pipe" DISTDIR="/usr/portage/distfiles" FEATURES="autoaddcvs ccache sandbox" GENTOO_MIRRORS="http://gentoo.oregonstate.edu http://distro.ibiblio.org/pub/Linux/distributions/gentoo" MAKEOPTS="-j2" PKGDIR="/usr/portage/packages" PORTAGE_TMPDIR="/var/tmp" PORTDIR="/usr/portage" PORTDIR_OVERLAY="" SYNC="rsync://rsync.gentoo.org/gentoo-portage" USE="X alsa apm arts avi berkdb bonobo cdr crypt cups directfb encode esd foomaticdb gdbm gif gnome gpm gtk gtk2 gtkhtml imlib java jpeg kde libg++ libwww mad mikmod motif mozilla mpeg mysql ncurses nls oggvorbis opengl oss pam pdflib perl png python qt quicktime readline ruby sdl slang spell ssl svga tcltk tcpd tetex truetype x86 xml2 xmms xv zlib"
*** Bug 48422 has been marked as a duplicate of this bug. ***
Ryan: I'm also having php/kerberos related problems. I'm using heimdal 0.6.2 (ebuild from bug#58799) and trying to emerge mod_php-4.3.8. It seems the problem has to do with some gssapi_krb5 library that configure (as me) is unable to find. I'm not using unstable gcc or glibc. From the output of the ebuild: checking for IMAP support... yes checking for pam_start in -lpam... yes checking for crypt in -lcrypt... yes checking whether SSL libraries are needed for c-client... /usr/lib checking whether IMAP works... no configure: error: build test failed. Please check the config.log for details. !!! ERROR: dev-php/mod_php-4.3.8 failed. !!! Function econf, Line 362, Exitcode 1 !!! econf failed From config.log: configure:41210: checking whether IMAP works configure:41243: gcc -o conftest -march=athlon -O3 -pipe -mmmx -m3dnow -L/usr/lib -ldb-4.0 -ltiff -L/usr/lib conftest.c -lc-client - lssl -lcrypto -lcrypt -lpam -lt1 -lfreetype -lpng -lz -ljpeg -lexslt -lxml2 -lxslt -lz -ldb-4.0 -lndbm -lgdbm -lcrack -lbz2 -lz -lssl -lcrypto -lresolv -lm -lxmlparse -lxmltok -lxml2 -lz -lm -lgssapi_krb5 -lkrb5 -lk5crypto -lcom_err 1>&5 /usr/lib/gcc-lib/i686-pc-linux-gnu/3.3.3/../../../../i686-pc-linux-gnu/bin/ld: cannot find -lgssapi_krb5 collect2: ld returned 1 exit status configure: failed program was: #line 41218 "configure" #include "confdefs.h" void mm_log(void){} void mm_dlog(void){} void mm_flags(void){} void mm_fatal(void){} void mm_critical(void){} void mm_nocritical(void){} void mm_notify(void){} void mm_login(void){} void mm_diskerror(void){} void mm_status(void){} void mm_lsub(void){} void mm_list(void){} void mm_exists(void){} void mm_searched(void){} void mm_expunged(void){} char mail_newbody(); int main() { mail_newbody(); return 0; } gssapi files in heimdal: commserver root # qpkg -l heimdal | grep gssapi /usr/lib/libgssapi.la /usr/lib/libgssapi.a /usr/lib/libgssapi.so.1.4.0 /usr/lib/libgssapi.so.1 -> libgssapi.so.1.4.0 1093739635 /usr/share/man/cat3/gssapi.3.gz /usr/share/man/man3/gssapi.3.gz /usr/include/heimdal/gssapi.h /usr/lib/libgssapi.so -> libgssapi.so.1.4.0 1093739636 /usr/include/gssapi -> heimdal 1093739636 My emerge info: Portage 2.0.50-r10 (2004.2, gcc-3.3.3, glibc-2.3.3.20040420-r0, 2.6.7-gentoo-r11) ================================================================= System uname: 2.6.7-gentoo-r11 i686 AMD Athlon(tm) Processor Gentoo Base System version 1.4.16 Autoconf: sys-devel/autoconf-2.59-r4 Automake: sys-devel/automake-1.8.3 ACCEPT_KEYWORDS="x86" AUTOCLEAN="yes" CFLAGS="-march=athlon -O3 -pipe -mmmx -m3dnow" CHOST="i686-pc-linux-gnu" COMPILER="" CONFIG_PROTECT="/etc /usr/X11R6/lib/X11/xkb /usr/kde/2/share/config /usr/kde/3/share/config /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 /var/lib/jboss /var/qmail/control" CONFIG_PROTECT_MASK="/etc/gconf /etc/terminfo /etc/env.d" CXXFLAGS="-O2 -mcpu=i686 -pipe" DISTDIR="/usr/portage/distfiles" FEATURES="autoaddcvs ccache sandbox sfperms" GENTOO_MIRRORS="http://gentoo.osuosl.org http://distro.ibiblio.org/pub/Linux/distributions/gentoo" MAKEOPTS="-j2" PKGDIR="/usr/portage/packages" PORTAGE_TMPDIR="/var/tmp" PORTDIR="/usr/portage" PORTDIR_OVERLAY="/usr/local/portage" SYNC="rsync://rsync.gentoo.org/gentoo-portage" USE="apache2 apm arts avi berkdb crypt cups doc encode flash foomaticdb gd gdbm gif gpm gtk2 imap imlib innodb java jpeg kerberos lcms ldap libg++ libwww mad maildir mcalc mikmod motif mpeg mysql ncurses nls oggvorbis opengl oss pam pdflib perl png postgres ppds python quicktime readline samba sasl sdl slang slp spell ssl svga tcpd tetex tiff truetype virus-scan x86 xml xml2 xmms xv zlib"
After doing the following: server root # ln -s /usr/lib/libgssapi.so.1.4.0 /usr/lib/libgssapi_krb5.so I get the following in config.log: configure:41210: checking whether IMAP works configure:41243: gcc -o conftest -march=athlon -O3 -pipe -mmmx -m3dnow -L/usr/lib -ldb-4.0 -ltiff -L/usr/lib conftest.c -lc-client - lssl -lcrypto -lcrypt -lpam -lt1 -lfreetype -lpng -lz -ljpeg -lexslt -lxml2 -lxslt -lz -ldb-4.0 -lndbm -lgdbm -lcrack -lbz2 -lz -lssl -lcrypto -lresolv -lm -lxmlparse -lxmltok -lxml2 -lz -lm -lgssapi_krb5 -lkrb5 -lk5crypto -lcom_err 1>&5 /usr/lib/gcc-lib/i686-pc-linux-gnu/3.3.3/../../../../i686-pc-linux-gnu/bin/ld: cannot find -lk5crypto I haven't been able a suitable library to resolve this link. Maybe php doesn't support heimdal? Ryan, could you please check for this library in your environment? I'm really curious, as you told you were able to compile php with heimdal, but in my case, heimdal doesn't seem to provide the required libraries.
I am getting the same problems, with heimdal as well. Mit-krb5 works fine. Note: This really sucks!!!! MIT-Kerberos5 is _not_ thread-safe. So if you have OpenLDAP installed and linked against it, then you have crashes. I have not tried to hack the ebuild for ldap to allow it to link against heimdal libs, and I frankly I am not sure that I want to try. However, nobody in Gentoo is to blame for that, and MIT is supposed to get thread-safety in 1.4
*** Bug 91530 has been marked as a duplicate of this bug. ***
PHP team, please do the following in the ebuilds for php-4.3* sed -i "s:-lgssapi_krb5:-lgssapi:" configure This will allow php4 to be kerberos agnostic.
Applied the patch from comment #14 to php-sapi.eclass.