keltorsori Posted February 11, 2010 Share Posted February 11, 2010 I am trying to install php 5.3 on a debian etch environment for our new school webserver. I'm not a super linux admin and could use some help: I need to have --with-kerberos \ in our php build. I have installed Kerberos 5 and the libkrb53 through apt-get, but I keep getting the same error during the php build: checking for pam_start in -lpam... yes checking for crypt in -lcrypt... yes configure: error: Kerberos libraries not found. Check the path given to --with-kerberos (if no path is given, searches in /usr/kerberos, /usr/local and /usr ) The libkrb53 files are in /usr/lib and I have included that in the phpinstall script (--with-kerberos=/usr/lib \), to no avail. Obviously I'm missing something more fundamental. I would appreciate any help on what I may be missing in the system (or what I can do to get the Kerberos libraries where they belong). thanks eric Full script: #!/bin/sh # Script updated 2009-12-27 by Steven Rosato to fix PHP 5.3 Compile Error: Undefined References in dns.c # Script updated 2009-09-24 by Christopher (heavymark.com) for latest source versions and incorrect url and addition of proper enabling of xmlrpc. # Script updated 2009-08-05 by Andy (andy.hwang.tw) to correct typo on m4 extract command. # # Script updated 2009-07-28 by samutz (samutz.com) to include ZIP, XMLRPC, # and GNU M4 (previous version of script failed without it) # # Script updated 2009-07-24 by ercoppa (ercoppa.org) to convert this script for PHP 5.3 (with all features of dreamhost, # except kerberos) with Xdebug and APC # # Script updated 2009-05-24 by ksmoe to correct copying of correct PHP cgi file (php-cgi instead of php) # Script updated 2006-12-25 by Carl McDade (hiveminds.co.uk) to allow memory limit and freetype # # Script updated 2007-11-24 by Andrew (ajmconsulting.net) to allow 3rd wget line to pass # LIBMCRYPT version information (was set as static download file name previously.) # # Script updated 2009-4-25 by Daniel (whathuhstudios.com) for latest source versions # # Save the code to a file as *.sh # Abort on any errors # set -e # The domain in which to install the PHP CGI script. export DOMAIN="ekhs.org" # Where do you want all this stuff built? I'd recommend picking a local # filesystem. # ***Don't pick a directory that already exists!*** We clean up after # ourselves at the end! SRCDIR=${HOME}/source # And where should it be installed? INSTALLDIR=${HOME}/php5 # Set DISTDIR to somewhere persistent, if you plan to muck around with this # script and run it several times! DISTDIR=${HOME}/dist # Pre-download clean up!!!! rm -rf $SRCDIR # Update version information here. PHP5="php-5.3.1" CURL="curl-7.19.6" XDEBUG="xdebug-2.0.5" M4="m4-1.4.13" AUTOCONF="autoconf-2.64" CCLIENT="imap-2004g" CCLIENT_DIR="imap-2004g" OPENSSL="openssl-0.9.8k" OPENSSL_DIR="openssl-0.9.8k" LIBMCRYPT="libmcrypt-2.5.8" LIBTOOL="libtool-2.2.6b" APC="APC-3.1.2" # What PHP features do you want enabled? PHPFEATURES="--prefix=${INSTALLDIR} \ --with-config-file-path=${INSTALLDIR}/etc/php5/${DOMAIN} \ --with-config-file-scan-dir=${INSTALLDIR}/etc/php5/${DOMAIN} \ --enable-fastcgi \ --bindir=$INSTALLDIR/bin \ --enable-force-cgi-redirect \ --enable-zip \ --enable-xmlrpc \ --with-xmlrpc \ --with-xml \ --with-freetype-dir=/usr \ --enable-soap \ --with-mhash=/usr \ --with-zlib-dir=/usr \ --with-jpeg-dir=/usr \ --with-png-dir=/usr \ --with-curl=${INSTALLDIR} \ --with-gd \ --with-kerberos \ --enable-gd-native-ttf \ --enable-memory-limit \ --enable-ftp \ --enable-exif \ --enable-sockets \ --enable-wddx \ --enable-sqlite-utf8 \ --enable-calendar \ --enable-mbstring \ --enable-mbregex \ --enable-bcmath \ --enable-fastcgi \ --enable-trans-sid \ --with-mysql=/usr \ --with-mysqli \ --with-pear=/usr/local/php5/lib/pear \ --with-gettext \ --with-gettext \ --with-pdo-mysql \ --with-openssl=${INSTALLDIR} \ --with-imap=${INSTALLDIR} \ --with-xsl \ --with-ttf=/usr \ --with-xslt \ --with-xslt-sablot=/usr \ --with-dom-xslt=/usr \ --with-mcrypt=${INSTALLDIR} \ --with-imap-ssl=/usr" # ---- end of user-editable bits. Hopefully! ---- # Push the install dir's bin directory into the path export PATH=${INSTALLDIR}/bin:$PATH #fix for PHP 5.3 Compile Error: Undefined References in dns.c export EXTRA_LIBS="-lresolv" # set up directories mkdir -p ${SRCDIR} mkdir -p ${INSTALLDIR} if [ ! -f ${DISTDIR} ] then mkdir -p ${DISTDIR} fi cd ${DISTDIR} # Get all the required packages if [ ! -f ${DISTDIR}/${PHP5}.tar.gz ] then wget -c wget -c http://us.php.net/get/${PHP5}.tar.gz/from/this/mirror fi if [ ! -f ${DISTDIR}/${CURL}.tar.gz ] then wget -c http://curl.haxx.se/download/${CURL}.tar.gz fi if [ ! -f ${DISTDIR}/${M4}.tar.gz ] then wget -c http://ftp.gnu.org/gnu/m4/${M4}.tar.gz fi if [ ! -f ${DISTDIR}/${AUTOCONF}.tar.gz ] then wget -c http://ftp.gnu.org/gnu/autoconf/${AUTOCONF}.tar.gz fi if [ ! -f ${DISTDIR}/${XDEBUG}.tgz ] then wget -c http://xdebug.org/files/${XDEBUG}.tgz fi if [ ! -f ${DISTDIR}/${CCLIENT}.tar.Z ] then wget -c ftp://ftp.cac.washington.edu/imap/old/${CCLIENT}.tar.Z fi if [ ! -f ${DISTDIR}/${OPENSSL}.tar.gz ] then wget -c http://www.openssl.org/source/${OPENSSL}.tar.gz fi if [ ! -f ${DISTDIR}/${LIBMCRYPT}.tar.gz ] then wget -c http://easynews.dl.sourceforge.net/sourceforge/mcrypt/${LIBMCRYPT}.tar.gz fi if [ ! -f ${DISTDIR}/${LIBTOOL}.tar.gz ] then wget -c http://ftp.gnu.org/gnu/libtool/${LIBTOOL}.tar.gz fi if [ ! -f ${DISTDIR}/${APC}.tgz ] then wget -c http://pecl.php.net/get/${APC}.tgz fi echo ---------- Unpacking downloaded archives. This process may take several minutes! ---------- cd ${SRCDIR} # Unpack them all echo Extracting ${PHP5}... tar xzf ${DISTDIR}/${PHP5}.tar.gz echo Done. echo Extracting ${CURL}... tar xzf ${DISTDIR}/${CURL}.tar.gz echo Done. echo Extracting ${M4}... tar xzf ${DISTDIR}/${M4}.tar.gz echo Done. echo Extracting ${XDEBUG}... tar xzf ${DISTDIR}/${XDEBUG}.tgz echo Done. echo Extracting ${AUTOCONF}... tar xzf ${DISTDIR}/${AUTOCONF}.tar.gz echo Done. echo Extracting ${CCLIENT}... uncompress -cd ${DISTDIR}/${CCLIENT}.tar.Z |tar x echo Done. echo Extracting ${OPENSSL}... uncompress -cd ${DISTDIR}/${OPENSSL}.tar.gz |tar x echo Done. echo Extracting ${LIBMCRYPT}... tar xzf ${DISTDIR}/${LIBMCRYPT}.tar.gz echo Done. echo Extracting ${LIBTOOL}... tar xzf ${DISTDIR}/${LIBTOOL}.tar.gz echo Done. echo Extracting ${APC}... tar xzf ${DISTDIR}/${APC}.tgz echo Done. # Build them in the required order to satisfy dependencies #cURL echo ################### echo Compile CURL echo ################### cd ${SRCDIR}/${CURL} ./configure --enable-ipv6 --enable-cookies \ --enable-crypto-auth --prefix=${INSTALLDIR} # make clean make make install #M4 echo ################### echo Compile M4 echo ################### cd ${SRCDIR}/${M4} ./configure --prefix=${INSTALLDIR} # make clean make make install #CCLIENT echo ################### echo Compile CCLIENT echo ################### cd ${SRCDIR}/${CCLIENT_DIR} make ldb # Install targets are for wusses! cp c-client/c-client.a ${INSTALLDIR}/lib/libc-client.a cp c-client/*.h ${INSTALLDIR}/include #OPENSSL echo ################### echo Compile OPENSSL echo ################### # openssl cd ${SRCDIR}/${OPENSSL_DIR} ./config --prefix=${INSTALLDIR} make make install #MCRYPT echo ################### echo Compile MCRYPT echo ################### cd ${SRCDIR}/${LIBMCRYPT} ./configure --disable-posix-threads --prefix=${INSTALLDIR} # make clean make make install #LIBTOOL echo ################### echo Compile LIBTOOL echo ################### cd ${SRCDIR}/${LIBTOOL} ./configure --prefix=${INSTALLDIR} # make clean make make install #PHP 5 echo ################### echo Compile PHP echo ################### cd ${SRCDIR}/${PHP5} ./configure ${PHPFEATURES} # make clean make make install # Copy a basic configuration for PHP mkdir -p ${INSTALLDIR}/etc/php5/${DOMAIN} cp ${SRCDIR}/${PHP5}/php.ini-production ${INSTALLDIR}/etc/php5/${DOMAIN}/php.ini #AUTOCONF echo ################### echo Compile AUTOCONF echo ################### cd ${SRCDIR}/${AUTOCONF} ./configure --prefix=${INSTALLDIR} # make clean make make install # XDEBUG echo ################### echo Compile XDEBUG echo ################### cd ${SRCDIR}/${XDEBUG} export PHP_AUTOHEADER=${INSTALLDIR}/bin/autoheader export PHP_AUTOCONF=${INSTALLDIR}/bin/autoconf echo $PHP_AUTOHEADER echo $PHP_AUTOCONF ${INSTALLDIR}/bin/phpize ./configure --enable-xdebug --with-php-config=${INSTALLDIR}/bin/php-config --prefix=${INSTALLDIR} # make clean make mkdir -p ${INSTALLDIR}/extensions cp modules/xdebug.so ${INSTALLDIR}/extensions echo "zend_extension=${INSTALLDIR}/extensions/xdebug.so" >> ${INSTALLDIR}/etc/php5/${DOMAIN}/xdebug.ini # APC echo ################### echo Compile APC echo ################### cd ${SRCDIR}/${APC} ${INSTALLDIR}/bin/phpize ./configure --enable-apc --enable-apc-mmap --with-php-config=${INSTALLDIR}/bin/php-config --prefix=${INSTALLDIR} # make clean make cp modules/apc.so ${INSTALLDIR}/extensions echo "extension=${INSTALLDIR}/extensions/apc.so" >> ${INSTALLDIR}/etc/php5/${DOMAIN}/apc.ini # Copy PHP CGI mkdir -p ${HOME}/${DOMAIN}/cgi-bin chmod 0755 ${HOME}/${DOMAIN}/cgi-bin cp ${INSTALLDIR}/bin/php-cgi ${HOME}/${DOMAIN}/cgi-bin/php.cgi rm -rf $SRCDIR $DISTDIR # Create .htaccess if [ -f ${HOME}/${DOMAIN}/.htaccess ] then echo # echo '#####################################################################' echo ' Your domain already has a .htaccess, it is ranamed .htaccess_old ' echo ' --> PLEASE FIX THIS PROBLEM <-- ' echo '#####################################################################' echo # mv ${HOME}/${DOMAIN}/.htaccess ${HOME}/${DOMAIN}/.htaccess_old fi echo 'Options +ExecCGI' >> ${HOME}/${DOMAIN}/.htaccess echo 'AddHandler php-cgi .php' >> ${HOME}/${DOMAIN}/.htaccess echo 'Action php-cgi /cgi-bin/php.cgi' >> ${HOME}/${DOMAIN}/.htaccess echo '' >> ${HOME}/${DOMAIN}/.htaccess echo '<FilesMatch "^php5?\.(ini|cgi)$">' >> ${HOME}/${DOMAIN}/.htaccess echo 'Order Deny,Allow' >> ${HOME}/${DOMAIN}/.htaccess echo 'Deny from All' >> ${HOME}/${DOMAIN}/.htaccess echo 'Allow from env=REDIRECT_STATUS' >> ${HOME}/${DOMAIN}/.htaccess echo '</FilesMatch>' >> ${HOME}/${DOMAIN}/.htaccess echo ---------- INSTALL COMPLETE! ---------- echo echo 'Configuration files:' echo "1) General PHP -> ${INSTALLDIR}/etc/php5/${DOMAIN}/php.ini" echo "2) Xdebug conf -> ${INSTALLDIR}/etc/php5/${DOMAIN}/xdebug.ini" echo "3) APC conf -> ${INSTALLDIR}/etc/php5/${DOMAIN}/apc.ini" echo echo 'You have to modify these files in order to enable Xdebug or APC features.' exit 0 Quote Link to comment Share on other sites More sharing options...
trq Posted February 12, 2010 Share Posted February 12, 2010 There are repos around that have packages available for 5.3. http://dotdeb.org for instance is one Ive not had any trouble with. Quote Link to comment Share on other sites More sharing options...
keltorsori Posted February 12, 2010 Author Share Posted February 12, 2010 There are repos around that have packages available for 5.3. http://dotdeb.org for instance is one Ive not had any trouble with. Unfortunately no Kerberos packages there. Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.