./configure:错误:HTTP XSLT模块需要libxml2 / libxslt库

时间:2019-08-08 14:49:45

标签: nginx libxml2 macos-mojave libxslt

我最近将mac-os更新为Mojave。我正在使用Nginx,并且可以在以前的操作系统上使用,但是更新到Mojave后,我无法启动Nginx。 所以我尝试再次安装它,首先,它给了我c编译器错误,所以我下载了Xcode命令行工具,然后它消失了。现在,它给了我找不到的libxml2 / libxslt库。我尝试使用brew安装它,但仍然出现相同的错误。我不确定出了什么问题。

我已经通过brew install下载了libxml2和libxslt。

我的配置脚本。

./configure \
--prefix=/opt/nginx/$NGINX_NAME_VERSION \
--pid-path=/var/run/nginx.pid \
--conf-path=/etc/nginx/$NGINX_NAME_VERSION/conf/nginx.conf \
--error-log-path=/var/log/nginx/error.log \
--http-log-path=/var/log/nginx/access.log \
--lock-path=/var/lock/nginx.lock \
--http-client-body-temp-path=/var/tmp/nginx/body \
--http-fastcgi-temp-path=/var/tmp/nginx/fastcgi \
--http-proxy-temp-path=/var/tmp/nginx/proxy \
--http-scgi-temp-path=/var/tmp/nginx/scgi \
--http-uwsgi-temp-path=/var/tmp/nginx/uwsgi \
--with-debug \
--with-http_addition_module \
--with-http_dav_module \
--with-http_geoip_module \
--with-http_gzip_static_module \
--with-http_realip_module \
--with-http_stub_status_module \
--with-http_ssl_module \
--with-http_sub_module \
--with-http_xslt_module \
--with-mail \
--with-mail_ssl_module \
--with-cc-opt=-I/usr/local/opt/openssl/include \
--with-ld-opt=-L/usr/local/opt/openssl/lib \
--builddir=$NGINX_BUILD_PATH

错误:

checking for OpenSSL library ... found
checking for zlib library ... found
checking for libxslt ... not found
checking for libxslt in /usr/local/ ... not found
checking for libxslt in /usr/pkg/ ... not found
checking for libxslt in /opt/local/ ... not found

您可以看到它能够找到OpenSSL,zlib,但不能找到libxslt。请有人帮我解决问题。

2 个答案:

答案 0 :(得分:3)

尝试以下

sudo apt-get install libxslt-dev

您可能还需要

sudo apt-get install libgd-dev # for the "error: the HTTP image filter module requires the GD library." error
sudo apt-get install libgeoip-dev # for the GeoIP package

答案 1 :(得分:0)

有时您知道您已经安装了 libxslt,但 nginx 仍然不断大喊您没有安装。

后面的实际问题不是libxslt是否安装了,而是nginx能否成功链接到它。最后,我发现 libxlst 链接到我的环境中安装的旧版 icu。然后我意识到我的 libxml2 太旧了。升级我的 libxml2 后,一切恢复正常。