Jump to content

Build error on Kerberos, lib installed, please help


Recommended Posts

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

Archived

This topic is now archived and is closed to further replies.

×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.