PHP共享扩展安装问题


PHP shared extensions installation issue

在FreeBSD 10.2 上从源代码安装php时遇到问题

./configure --prefix=/usr/local/php53 '
--without-pear '
-with-pcre-regex=/usr/local '
--with-libxml-dir=/usr/local '
--enable-shared=yes '
--enable-bcmath '
--enable-calendar '
--enable-exif '
--enable-ftp=shared '
--enable-mbstring=shared '
--enable-soap=shared '
--enable-sockets=shared '
--enable-zip=shared '
--with-zlib '
--with-curl=shared '
--with-mysql=/usr/local/mysql '
--with-mysqli=/usr/local/mysql/bin/mysql_config '
--with-pdo-mysql=/usr/local/mysql '
--enable-dba '
--with-gd=shared '
--with-jpeg-dir=/usr/local '
--enable-gd-native-ttf '
--with-iconv=/usr/local '
--with-gnu-ld '
--with-layout=GNU

PHP运行良好。但在扩展目录中我得到:

libcurl.a
libftp.a
libgd.a
libmbstring.a
libsoap.a
libsockets.a
libzip.a

没有".so"文件。而且我无法在php.ini中手动加载扩展。此外,我还尝试通过pecl安装一些扩展,并得到了相同的结果。a在哪里犯了错误?如何使用".so"扩展构建PHP?

问题与"配置"脚本有关。它检查各种版本的FreeBSD,如freebsd3*、freebsd2*和freebsd1*。当在freebsd10.0+上运行时,脚本认为它是freebsd1.0,它禁用了共享对象和动态链接。从配置中删除有问题的freebsd1*行可以修复此问题。更多信息-https://bugs.php.net/bug.php?id=66007