views:

327

answers:

2

I compile Apache-MySQL-PHP by hand to build a custom install using the configure options from below. When I start apache it fails to start and adds the below error in the error_log.
* Apache 2
* Mysql 5.0
* PHP 5.1
* CentOS Linux 5.4 * GCC compiler

the error in apache log

httpd: Syntax error on line 54 of /opt/clamp/etc/httpd.conf: Cannot load /opt/clamp/modules/libphp5.so into server: /opt/clamp/modules/libphp5.so: undefined symbol: _estrndup

the ./configure options

APACHE ./configure \ --prefix=/opt/clamp \ --sysconfdir=/opt/clamp/etc \ --enable-auth-dbm \ --enable-cern-meta \ --enable-auth-digest \ --enable-charset-lite \ --enable-deflate \ --enable-expires \ --enable-cache \ --enable-disk-cache \ --enable-file-cache \ --enable-headers \ --enable-info \ --enable-mime-magic \ --enable-proxy \ --enable-proxy-ajp \ --enable-proxy-balancer \ --enable-proxy-connect \ --enable-proxy-ftp \ --enable-proxy-http \ --enable-rewrite \ --enable-so \ --enable-ssl

MYSQL ./configure \ --prefix=/opt/clamp \ --sysconfdir=/opt/clamp/etc \ --libexecdir=/opt/clamp/sbin \ --localstatedir=/opt/clamp/var \ --with-unix-socket-path=/opt/clamp/tmp/mysql.sock \ --enable-thread-safe

PHP ./configure \ --prefix=/opt/clamp \ --sysconfdir=/opt/clamp/etc \ --with-apxs2=/opt/clamp/bin/apxs \ --with-config-file-path=/opt/clamp/etc/php.conf \ --with-mysql=/opt/clamp \ --with-mysqli=/opt/clamp/bin/mysql_config \ --enable-force-cgi-redirect \ --disable-cgi \ --with-zlib \ --with-gettext \ --with-gdbm \ --with-ldap \ --with-ldap-sasl \ --enable-zip \ --with-bz2 \ --with-gd \ --with-jpeg-dir=/usr \ --with-png-dir=/usr

A: 

if you are not gonna read all the error logs, you can try:

char *
estrndup(const char *s, size_t len)
{
    char *d = strndup(s, len);
    //if (d == NULL)
    //  (*efunc)(1, "Cannot copy string");
    return d;
}
fazo
what other log i should read?
clyfe
i meant, that if you are not gonna read any error logs, then you may try provided snippet
fazo
A: 

It seems that I wasn't building PHP's GD library right, building PHP with the following options worked (no more error):

cd php-5.2.13/ ./configure \ --prefix=/opt/clamp \ --sysconfdir=/opt/clamp/etc \ --with-apxs2=/opt/clamp/bin/apxs \ --with-config-file-path=/opt/clamp/etc/php.conf \ --disable-debug \ --with-pic \ --disable-rpath \ --without-pear \ --with-bz2 \ --with-curl \ --with-freetype-dir=/usr \ --with-png-dir=/usr \ --enable-gd-native-ttf \ --without-gdbm \ --with-gettext \ --with-gmp \ --with-iconv \ --with-jpeg-dir=/usr \ --with-openssl \ --with-pspell \ --with-zlib \ --with-layout=GNU \ --enable-exif \ --enable-ftp \ --enable-magic-quotes \ --enable-sockets \ --enable-sysvsem --enable-sysvshm --enable-sysvmsg \ --enable-wddx \ --with-kerberos \ --enable-ucd-snmp-hack \ --enable-shmop \ --enable-calendar \ --without-sqlite \ --enable-force-cgi-redirect \ --enable-pcntl \ --with-imap --with-imap-ssl \ --enable-mbstring \ --enable-mbregex \ --with-ncurses \ --with-gd \ --enable-bcmath \ --with-xmlrpc \ --with-ldap --with-ldap-sasl \ --with-mysql=/opt/clamp \ --with-mysqli=/opt/clamp/bin/mysql_config \ --enable-dom \ --with-pgsql \ --enable-soap \ --enable-xmlreader --enable-xmlwriter \ --enable-fastcgi make make install

clyfe