OVH Cloud OVH Cloud

HELP : erreurs de compilation PHP 4.4.4 et Apache 1.3.37 (avec support PostgreSQL)

1 réponse
Avatar
Fred
Bonjour,,

J'essaye d'installer PHP 4.4.4 and Apache 1.3.37 avec les options
suivantes :

PHP 4.4.4 :

./configure --with-apache=../apache_1.3.37 --with-xml --with-dom
--with-gd --with-jpeg-dir --with-jpeg-dir=/usr --with-png-dir
--with-png-dir=/usr --with-freetype-dir --with-gettext --with-mysql
--with-pgsql --with-zlib-dir --with-imap --with-kerberos --with-imap-ssl
--with-openssl --with-gettext --with-mcrypt --with-iconv
--with-mime-magic=/usr/share/magic.mime --with-curl=/usr/local/lib
--enable-mbstring=all --enable-mbregex --enable-sysvsem --enable-sysvshm
--enable-gd-native-ttf --enable-trans-sid --enable-ftp --enable-bcmath
--enable-calendar --enable-exif

APACHE 1.3.37 :

./configure --prefix=/usr/local/apache
--activate-module=src/modules/php4/libphp4.a --enable-suexec
--suexec-caller=nobody --suexec-userdir=www --suexec-docroot=/home
--suexec-logfile=/usr/local/apache/logs/cgi.log --suexec-uidmin=99
--suexec-gidmin=99 --suexec-safepath=/usr/local/bin:/usr/bin:/bin
--enable-module=so --enable-module=rewrite
--add-module=src/modules/extra/mod_gzip.c --enable-module=ssl


Je compile PHP, tout est OK
MAIS , en compilant Apache , j'ai les erreurs suivantes :

/usr/lib/libc-client.a(osdep.o): In function `ssl_onceonlyinit':
/usr/src/build/41512-i386/BUILD/imap-2000c/c-client/auth_ssl.c:153: the
use of `tmpnam' is dangerous, better use `mkstemp'
/usr/bin/ld: warning: libcom_err.so.3, needed by /usr/lib/libpq.so, may
conflict with libcom_err.so.2
modules/php4/libphp4.a(pgsql.o): In function `zif_pg_escape_string':
/home/ovh/src/php-4.4.4/ext/pgsql/pgsql.c:2713: undefined reference to
`PQescapeString'
modules/php4/libphp4.a(pgsql.o): In function `zif_pg_escape_bytea':
/home/ovh/src/php-4.4.4/ext/pgsql/pgsql.c:2730: undefined reference to
`PQescapeBytea'
modules/php4/libphp4.a(pgsql.o): In function `php_pgsql_convert':
/home/ovh/src/php-4.4.4/ext/pgsql/pgsql.c:3662: undefined reference to
`PQescapeString'
/home/ovh/src/php-4.4.4/ext/pgsql/pgsql.c:3952: undefined reference to
`PQescapeBytea'
collect2: ld returned 1 exit status
make[2]: *** [target_static] Erreur 1
make[2]: Quitte le répertoire `/home/ovh/src/apache_1.3.37/src'
make[1]: *** [build-std] Erreur 2
make[1]: Quitte le répertoire `/home/ovh/src/apache_1.3.37'
make: *** [build] Erreur 2


Il semble que ça vient du module pgsql (j'ai installé postgresql 8.1.4)
Comment faire alors ?

Merci pour votre aide précieuse !

cordialement,

Fred

1 réponse

Avatar
John GALLET
Bonjour,

--with-jpeg-dir --with-jpeg-dir=/usr --with-png-dir --with-png-dir=/usr


Devrait être plutôt probablement :

--with-jpeg --with-jpeg-dir=/usr --with-png --with-png-dir=/usr

Je compile PHP, tout est OK
M'étonne, mais surtout il faut compiler apache avant php selon la doc.


http://fr2.php.net/manual/en/install.unix.php#install.unix.apache
(le 4.1 est la version dynamique, le 4.2 est la version statique,
l'ordre de compilation est le même).

/usr/bin/ld: warning: libcom_err.so.3, needed by /usr/lib/libpq.so, may
conflict with libcom_err.so.2
Je ne sais pas à quoi sert cette lib, mais ça sent pas bon. Ca ne

devrait pas provoquer l'erreur suivante, mais faire attention au run-time.

Il semble que ça vient du module pgsql (j'ai installé postgresql 8.1.4)
De l'extension PHP qui wrappe la lib d'accès à postgresql.


Comment faire alors ?
Déjà faire strictement ce qui est indiqué dans le manuel concernant

l'ordre de compilation. Ensuite on verra. Ne pas oublier ici de faire un
make distclean partout ou de carrément supprimer les répertoires et de
rédétarrer. Si le problème persiste essayer avec une version antérieur
de PHP, ou vérifier les dernières modifs en date dans l'extension postgres.

a++,
JG