我手动编译 Apache-MySQL-PHP,以使用下面的配置选项构建自定义安装。当我启动 apache 时,它无法启动并在 error_log 中添加以下错误。
* Apache 2
* MySQL 5.0
* PHP 5.1
* CentOS Linux 5.4
* GCC编译器
apache日志中的错误
httpd:/opt/clamp/etc/httpd.conf 第 54 行出现语法错误:无法将/opt/clamp/modules/libphp5.so 加载到服务器:/opt/clamp/modules/libphp5.so: undefined symbol :_estrndup
./configure 选项
Apache 。/配置\ --prefix=/opt/clamp\ --sysconfdir=/opt/clamp/etc\ --enable-auth-dbm\ --enable-cern-meta\ --enable-auth-digest\ --enable-charset-lite\ --enable-deflate\ --启用-过期\ --启用缓存\ --启用磁盘缓存\ --启用文件缓存\ --启用 header \ --启用信息\ --enable-mime-magic\ --启用代理\ --启用代理-ajp\ --启用代理平衡器\ --启用代理连接\ --启用代理FTP\ --启用代理-http\ --启用重写\ --enable-so\ --启用-ssl
MYSQL 。/配置\ --prefix=/opt/clamp\ --sysconfdir=/opt/clamp/etc\ --libexecdir=/opt/clamp/sbin\ --localstatedir=/opt/clamp/var\ --with-unix-socket-path=/opt/clamp/tmp/mysql.sock\ --启用线程安全
PHP 。/配置\ --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\ --禁用-cgi\ --with-zlib\ --with-gettext\ --with-gdbm\ --with-ldap\ --with-ldap-sasl\ --启用-zip\ --with-bz2\ --with-gd\ --with-jpeg-dir=/usr\ --with-png-dir=/usr最佳答案
如果您不想阅读所有错误日志,您可以尝试:
char *
estrndup(const char *s, size_t len)
{
char *d = strndup(s, len);
//if (d == NULL)
// (*efunc)(1, "Cannot copy string");
return d;
}
关于PHP 错误 : libphp5. 所以: undefined symbol :_estrndup,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2385735/