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

发布于 2022-09-01 21:42:22 字数 776 浏览 47 评论 0

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

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

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

/usr/lib64/php/modules

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

/usr/lib/php/extensions/no-debug-non-zts-20100525

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

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

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

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

守望孤独 2022-09-08 21:42:23

其实配置文件里面的那个extension目录不用更改,默认就行/usr/lib/php/extensions/no-debug-non-zts-20100525这个不必要,我亲自测试了的,这个属于动态模块,只要在extension里面申明一下,就会自动加载。

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文