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

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

WBOY
Release: 2016-06-06 20:23:53
Original
1273 people have browsed it

环境: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>
Copy after login
Copy after login

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

<code>/usr/lib64/php/modules</code>
Copy after login
Copy after login

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

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

尝试用--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>
Copy after login
Copy after login

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

<code>/usr/lib64/php/modules</code>
Copy after login
Copy after login

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

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

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

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

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

Related labels:
source:php.cn
Statement of this Website
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
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template