Heim >Backend-Entwicklung >PHP-Tutorial >编译PHP可以控制扩展目录和扩展文件吗?

编译PHP可以控制扩展目录和扩展文件吗?

WBOY
WBOYOriginal
2016-06-06 20:23:531251Durchsuche

环境:CentOS 7、PHP 5.4.16
原本是编译PHP 7,遇到两个问题,之后用PHP 5.4.16进行了验证,这两个问题依然存在。
简化的编译命令是:

<code>./configure --prefix=/usr --enable-fpm --enable-mbstring=shared
make && make install</code>

1.扩展文件目录:
请问,是否可以在编译过程中指定扩展文件的目录。
用yum安装PHP的时候,扩展目录是:

<code>/usr/lib64/php/modules</code>

而进行编译安装的时候,扩展目录是

<code>/usr/lib/php/extensions/no-debug-non-zts-20100525</code>

尝试用--extension-dir做编译参数,不被支持。
请问,是否进行编译安装的时候,无法控制扩展目录?

2.编译目录中的.a文件:
编译之后,进入扩展目录,可以发现,除了一般需要的.so文件之外,每个扩展还存在一个.a文件。
比如:
编译PHP可以控制扩展目录和扩展文件吗?

请问,这个.a文件是干什么用的?是否可以通过编译参数不生成这个文件?
另外:当完成PHP编译,单独编译扩展的时候则不会有.a文件。

回复内容:

环境:CentOS 7、PHP 5.4.16
原本是编译PHP 7,遇到两个问题,之后用PHP 5.4.16进行了验证,这两个问题依然存在。
简化的编译命令是:

<code>./configure --prefix=/usr --enable-fpm --enable-mbstring=shared
make && make install</code>

1.扩展文件目录:
请问,是否可以在编译过程中指定扩展文件的目录。
用yum安装PHP的时候,扩展目录是:

<code>/usr/lib64/php/modules</code>

而进行编译安装的时候,扩展目录是

<code>/usr/lib/php/extensions/no-debug-non-zts-20100525</code>

尝试用--extension-dir做编译参数,不被支持。
请问,是否进行编译安装的时候,无法控制扩展目录?

2.编译目录中的.a文件:
编译之后,进入扩展目录,可以发现,除了一般需要的.so文件之外,每个扩展还存在一个.a文件。
比如:
编译PHP可以控制扩展目录和扩展文件吗?

请问,这个.a文件是干什么用的?是否可以通过编译参数不生成这个文件?
另外:当完成PHP编译,单独编译扩展的时候则不会有.a文件。

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn