我刚刚安装了apxs
带有该包的 bin httpd24-httpd-devel-2.4.6-16.el6.x86_64
。
我需要它来使用 Apache 模块编译 PHP。
当我启动该命令时 apxs --help
出现以下错误:
cannot open /httpd/build/config_vars.mk: No such file or directory at /opt/rh/httpd24/root/usr/bin/apxs line 214
我将此文件放入/opt/rh/httpd24/root/usr/lib64/httpd/build/
,是否应将此文件夹添加到我的 PATH 中,或者有没有办法告诉 Apache 查看此目录?
答案1
这是 SCL 软件包 httpd24-httpd-devel 的问题。标准 CentOS/RedHat rpm 中已存在错误,现已修复。
由于 apxs 是一个 perl 脚本,如果你查看它的内部,就会发现这是负责的代码:
my $libdir = `pkg-config --variable=libdir apr-1`;
chomp $libdir;
my $installbuilddir = $libdir . "/httpd/build";
您还可以将 $installbuilddir 变量更改为:
my $installbuilddir = '/opt/rh/httpd24/root/usr/lib64' . "/httpd/build";
只需确保您修改位于 /opt/rh/httpd24/root/usr/bin/apxs 的 httpd24 apxs,而不是原始版本 (/usr/sbin/apxs)。
如果您不想修改 apxs,这个快速修复方法也可以:
cd /
ln -s /opt/rh/httpd24/root/usr/lib64/httpd .
答案2
您是sudo make install
在 内部执行的操作scl enable httpd24 bash
吗?这会将 $PATH 重置为默认值。您需要改为执行以下操作:
sudo scl enable httpd24 perl516 'make install'