Home  >  Article  >  Backend Development  >  编译PHP可以控制扩展目录和扩展文件吗?

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

WBOY
WBOYOriginal
2016-06-06 20:23:531206browse

环境: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文件。

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn