I am trying to compile the latest PHP5 from CVS w/ openssl support, and
it bails looking for krb.h. I have
a RedHat9 box. Below is the output. I have this same issue with
compiling php 4.3.2. I usually have to hack the
Makefile to add the include path where the krb.h include is.
[root@hemna php5]# make
/bin/sh /usr/local/src/php5/libtool --silent --preserve-dup-deps
--mode=compile gcc -Iext/openssl/ -I/usr/local/src/php5/ext/openssl/
-DPHP_ATOM_INC -I/usr/local/src/php5/include -I/usr/local/src/php5/main
-I/usr/local/src/php5 -I/usr/local/src/php5/Zend -I/usr/include/libxml2
-I/usr/local/include -I/usr/include/mysql
-I/u01/app/oracle/product/8.1.7/rdbms/public
-I/u01/app/oracle/product/8.1.7/rdbms/demo -I/usr/local/src/php5/TSRM
-g -O2 -prefer-pic -c /usr/local/src/php5/ext/openssl/xp_ssl.c -o
ext/openssl/xp_ssl.lo
In file included from /usr/include/openssl/ssl.h:179,
from /usr/local/src/php5/ext/openssl/xp_ssl.c:26:
/usr/include/openssl/kssl.h:72:18: krb5.h: No such file or directory
In file included from /usr/include/openssl/ssl.h:179,
from /usr/local/src/php5/ext/openssl/xp_ssl.c:26:
/usr/include/openssl/kssl.h:132: parse error before "krb5_enctype"
/usr/include/openssl/kssl.h:134: parse error before "FAR"
/usr/include/openssl/kssl.h:135: parse error before '}' token
/usr/include/openssl/kssl.h:147: parse error before "kssl_ctx_setstring"
/usr/include/openssl/kssl.h:147: parse error before '' token
/usr/include/openssl/kssl.h:148: parse error before '' token
/usr/include/openssl/kssl.h:149: parse error before '' token
/usr/include/openssl/kssl.h:149: parse error before '' token
/usr/include/openssl/kssl.h:150: parse error before '' token
/usr/include/openssl/kssl.h:151: parse error before "kssl_ctx_setprinc"
/usr/include/openssl/kssl.h:151: parse error before '' token
/usr/include/openssl/kssl.h:153: parse error before "kssl_cget_tkt"
/usr/include/openssl/kssl.h:153: parse error before '' token
/usr/include/openssl/kssl.h:155: parse error before "kssl_sget_tkt"
/usr/include/openssl/kssl.h:155: parse error before '' token
/usr/include/openssl/kssl.h:157: parse error before "kssl_ctx_setkey"
/usr/include/openssl/kssl.h:157: parse error before '' token
/usr/include/openssl/kssl.h:159: parse error before "context"
/usr/include/openssl/kssl.h:160: parse error before "kssl_build_principal_2"
/usr/include/openssl/kssl.h:160: parse error before "context"
/usr/include/openssl/kssl.h:163: parse error before "kssl_validate_times"
/usr/include/openssl/kssl.h:163: parse error before "atime"
/usr/include/openssl/kssl.h:165: parse error before "kssl_check_authent"
/usr/include/openssl/kssl.h:165: parse error before '' token
/usr/include/openssl/kssl.h:167: parse error before "enctype"
In file included from /usr/local/src/php5/ext/openssl/xp_ssl.c:26:
/usr/include/openssl/ssl.h:909: parse error before "KSSL_CTX"
/usr/include/openssl/ssl.h:931: parse error before '}' token
make: *** [ext/openssl/xp_ssl.lo] Error 1
[root@hemna php5]# locate krb5.h
/usr/kerberos/include/gssapi/gssapi_krb5.h
/usr/kerberos/include/krb5.h
[root@hemna php5]# rpm -qf /usr/kerberos/include/krb5.h
krb5-devel-1.2.7-14
Walt
That's a known problem on redhat9 - kerberos include files are in
/usr/kerberos/include, which is not in your include path. You have to
tweak it by hand to make PHP compile with openssl on redhat9.
PHP is not alone - any application that needs to be compiled against
openssl on a redhat9 box will fail like that (unless it is aware that
kerberos is installed in /usr/kerberos).
:(
Vlad
walt boring wrote:
I am trying to compile the latest PHP5 from CVS w/ openssl support,
and it bails looking for krb.h. I have
a RedHat9 box. Below is the output. I have this same issue with
compiling php 4.3.2. I usually have to hack the
Makefile to add the include path where the krb.h include is.[root@hemna php5]# make
/bin/sh /usr/local/src/php5/libtool --silent --preserve-dup-deps
--mode=compile gcc -Iext/openssl/ -I/usr/local/src/php5/ext/openssl/
-DPHP_ATOM_INC -I/usr/local/src/php5/include
-I/usr/local/src/php5/main -I/usr/local/src/php5
-I/usr/local/src/php5/Zend -I/usr/include/libxml2 -I/usr/local/include
-I/usr/include/mysql -I/u01/app/oracle/product/8.1.7/rdbms/public
-I/u01/app/oracle/product/8.1.7/rdbms/demo
-I/usr/local/src/php5/TSRM -g -O2 -prefer-pic -c
/usr/local/src/php5/ext/openssl/xp_ssl.c -o ext/openssl/xp_ssl.lo
In file included from /usr/include/openssl/ssl.h:179,
from /usr/local/src/php5/ext/openssl/xp_ssl.c:26:
/usr/include/openssl/kssl.h:72:18: krb5.h: No such file or directory
In file included from /usr/include/openssl/ssl.h:179,
from /usr/local/src/php5/ext/openssl/xp_ssl.c:26:
/usr/include/openssl/kssl.h:132: parse error before "krb5_enctype"
/usr/include/openssl/kssl.h:134: parse error before "FAR"
/usr/include/openssl/kssl.h:135: parse error before '}' token
/usr/include/openssl/kssl.h:147: parse error before "kssl_ctx_setstring"
/usr/include/openssl/kssl.h:147: parse error before '' token
/usr/include/openssl/kssl.h:148: parse error before '' token
/usr/include/openssl/kssl.h:149: parse error before '' token
/usr/include/openssl/kssl.h:149: parse error before '' token
/usr/include/openssl/kssl.h:150: parse error before '' token
/usr/include/openssl/kssl.h:151: parse error before "kssl_ctx_setprinc"
/usr/include/openssl/kssl.h:151: parse error before '' token
/usr/include/openssl/kssl.h:153: parse error before "kssl_cget_tkt"
/usr/include/openssl/kssl.h:153: parse error before '' token
/usr/include/openssl/kssl.h:155: parse error before "kssl_sget_tkt"
/usr/include/openssl/kssl.h:155: parse error before '' token
/usr/include/openssl/kssl.h:157: parse error before "kssl_ctx_setkey"
/usr/include/openssl/kssl.h:157: parse error before '' token
/usr/include/openssl/kssl.h:159: parse error before "context"
/usr/include/openssl/kssl.h:160: parse error before
"kssl_build_principal_2"
/usr/include/openssl/kssl.h:160: parse error before "context"
/usr/include/openssl/kssl.h:163: parse error before "kssl_validate_times"
/usr/include/openssl/kssl.h:163: parse error before "atime"
/usr/include/openssl/kssl.h:165: parse error before "kssl_check_authent"
/usr/include/openssl/kssl.h:165: parse error before '' token
/usr/include/openssl/kssl.h:167: parse error before "enctype"
In file included from /usr/local/src/php5/ext/openssl/xp_ssl.c:26:
/usr/include/openssl/ssl.h:909: parse error before "KSSL_CTX"
/usr/include/openssl/ssl.h:931: parse error before '}' token
make: *** [ext/openssl/xp_ssl.lo] Error 1[root@hemna php5]# locate krb5.h
/usr/kerberos/include/gssapi/gssapi_krb5.h
/usr/kerberos/include/krb5.h[root@hemna php5]# rpm -qf /usr/kerberos/include/krb5.h
krb5-devel-1.2.7-14Walt
This one time, at band camp, walt boring waboring@3gstech.com wrote:
I am trying to compile the latest PHP5 from CVS w/ openssl support, and
it bails looking for krb.h. I have
a RedHat9 box. Below is the output. I have this same issue with
compiling php 4.3.2. I usually have to hack the
Makefile to add the include path where the krb.h include is.
I use redhat 9 and 5.0, be sure to configure
--with-kerberos=/usr/kerberos
Kevin
(_____ \
) ) ____ ____ ____ ____
| / / _ ) / _ | / ) / _ )
| | ( (/ / ( ( | |( ( ( (/ /
|| _) _||| _) ___)
Kevin Waterson
Port Macquarie, Australia
Kevin Waterson wrote:
This one time, at band camp, walt boring waboring@3gstech.com wrote:
I am trying to compile the latest PHP5 from CVS w/ openssl support, and
it bails looking for krb.h. I have
a RedHat9 box. Below is the output. I have this same issue with
compiling php 4.3.2. I usually have to hack the
Makefile to add the include path where the krb.h include is.I use redhat 9 and 5.0, be sure to configure
--with-kerberos=/usr/kerberos
It was my understanding that this option was for IMAP, not openssl. By
sheer luck you must've been also configuring PHP to have IMAP support,
so '--with-kerberos' added a necessary '-I/usr/kerberos/include' for
you. If you do not configure PHP to use IMAP, you won't be able to use
openssl. At least that's what I experienced.
Vlad
Kevin
This one time, at band camp, Vlad Krupin vlad@php.net wrote:
It was my understanding that this option was for IMAP, not openssl. By
sheer luck you must've been also configuring PHP to have IMAP support,
so '--with-kerberos' added a necessary '-I/usr/kerberos/include' for
you. If you do not configure PHP to use IMAP, you won't be able to use
openssl. At least that's what I experienced.
This is my configure line.. from phpinfo();
'./configure' '--host=i386-redhat-linux' '--build=i386-redhat-linux' '--target=i386-redhat-linux-gnu' '--program-prefix=' '--exec-prefix=/usr' '--bindir=/usr/bin' '--sbindir=/usr/sbin' '--sysconfdir=/etc' '--datadir=/usr/share' '--includedir=/usr/include' '--libdir=/usr/lib' '--libexecdir=/usr/libexec' '--localstatedir=/var' '--sharedstatedir=/usr/com' '--mandir=/usr/share/man' '--infodir=/usr/share/info' '--cache-file=../config.cache' '--with-config-file-path=/etc' '--with-config-file-scan-dir=/etc/php.d' '--with-apxs2=/usr/local/apache2/bin/apxs' '--enable-debug' '--enable-pic' '--disable-rpath' '--enable-inline-optimization' '--prefix=/usr/local/apache2/php' '--with-config-file-path=/usr/local/apache2/php' '--enable-track-vars' '--enable-force-cgi-redirect' '--disable-cgi' '--with-gettext' '--with-bz2' '--with-curl' '--with-exec-dir=/usr/bin' '--with-freetype-dir=/usr' '--with-gd' '--enable-gd-native-ttf' '--enable-gd-jis-conv' '--with-ttf' '--with-gettext' '--with-gmp' '!
--with-iconv' '--with-jpeg-dir=/usr' '--enable-bcmath' '--enable-exif' '--enable-ftp' '--enable-magic-quotes' '--enable-safe-mode' '--enable-sockets' '--enable-sysvsem' '--enable-sysvshm' '--enable-discard-path' '--enable-trans-sid' '--enable-yp' '--enable-wddx' '--without-oci8' '--with-pear=/usr/share/pear' '--with-ldap=shared' '--with-mysql=shared,/usr' '--with-pgsql=shared' '--enable-memory-limit' '--enable-shmop' '--enable-versioning' '--enable-calendar' '--enable-dio' '--enable-mcal' '--with-pspell' '--with-png' '--with-png-dir=/usr' '--with-dom5' '--with-dom-xslt' '--with-dom=/usr' '--with-qtdom' '--with-zlib' '--enable-xslt' '--with-xslt-sablot=/usr' '--with-sablot-js=/usr' '--with-expat-dir=/usr' '--with-gdbm' '--enable-dbx' '--with-imap=shared' '--with-imap-ssl' '--with-openssl' '--with-kerberos=/usr/kerberos' '--with-layout=GNU' '--with-tiff=/usr' '--with-curlwrappers' '--with-filepro' '--with-xpm-dir=/usr' '--with-libxml-dir=/usr' '--with-xmlrpc'
Kevin
--
(_____ \
) ) ____ ____ ____ ____
| / / _ ) / _ | / ) / _ )
| | ( (/ / ( ( | |( ( ( (/ /
|| _) _||| _) ___)
Kevin Waterson
Port Macquarie, Australia
Kevin Waterson wrote:
This one time, at band camp, walt boring waboring@3gstech.com wrote:
I am trying to compile the latest PHP5 from CVS w/ openssl support, and
it bails looking for krb.h. I have
a RedHat9 box. Below is the output. I have this same issue with
compiling php 4.3.2. I usually have to hack the
Makefile to add the include path where the krb.h include is.I use redhat 9 and 5.0, be sure to configure
--with-kerberos=/usr/kerberos
Kevin
I just tried this after doing a cvsclean and ./buildconf and ./configure
same problem. My configure line is
./configure
--with-oci8=/u01/app/oracle/product/8.1.7
--enable-sigchild
--with-mcrypt
--with-gd
--with-png-dir=/usr
--with-jpeg-dir=/usr
--with-zlib-dir=/usr
--enable-sysvsem
--enable-sysvshm
--enable-shmop
--enable-trackvars
--with-xml
--with-zlib
--with-gdbm
--with-dom
--with-mysql=/usr
--enable-memory-limit
--enable-mbstring
--with-gettext
--enable-tokenizer
--enable-sockets
--with-kerberos=/usr/kerberos
--with-openssl
--with-apxs=/usr/local/apache/bin/apxs
--enable-mbstr-enc-trans
[snip]
I use redhat 9 and 5.0, be sure to configure
--with-kerberos=/usr/kerberos
Kevin
I just tried this after doing a cvsclean and ./buildconf and ./configure
same problem. My configure line is
As far as I know, --with-kerberos does not have any effect if you do not
compile PHP with imap support, so it won't work for your configure line.
Vlad
./configure
--with-oci8=/u01/app/oracle/product/8.1.7
--enable-sigchild
--with-mcrypt
--with-gd
--with-png-dir=/usr
--with-jpeg-dir=/usr
--with-zlib-dir=/usr
--enable-sysvsem
--enable-sysvshm
--enable-shmop
--enable-trackvars
--with-xml
--with-zlib
--with-gdbm
--with-dom
--with-mysql=/usr
--enable-memory-limit
--enable-mbstring
--with-gettext
--enable-tokenizer
--enable-sockets
--with-kerberos=/usr/kerberos
--with-openssl
--with-apxs=/usr/local/apache/bin/apxs
--enable-mbstr-enc-trans