0

通过包含对 Apache 2.4.33 的 mod_brotli 支持获得以下问题。

我编译了 brotli,它编译得很好,但是当我在 apache 配置脚本中使用--enable-brotliand启用它时--with-brotli=/apps/httpdx64/brotli。编译 apache 时收到以下错误消息:

/apps/httpdx64/apr/build-1/libtool --silent --mode=link gcc -std=gnu99 -I/usr/include/libxml2 -I/apps/httpdx64/brotli/include -g -O2 -pthread  -DSSL_EXPERIMENTAL_ENGINE   -L/apps/httpdx64/apache24/openssl/lib -L/usr/lib64 -L/apps/httpdx64/expat/lib      -o mod_brotli.la -rpath /apps/httpdx64/apache24/modules -module -avoid-version  mod_brotli.lo -L/apps/httpdx64/brotli/lib -lbrotlienc -lbrotlicommon -export-symbols-regex brotli_module
/usr/bin/ld: cannot find -lbrotlienc
collect2: ld returned 1 exit status
make[3]: *** [mod_brotli.la] Error 1
make[3]: Leaving directory `/apps/httpdx64/httpd-2.4.33/modules/filters'
make[2]: *** [install-recursive] Error 1
make[2]: Leaving directory `/apps/httpdx64/httpd-2.4.33/modules/filters'
make[1]: *** [install-recursive] Error 1
make[1]: Leaving directory `/apps/httpdx64/httpd-2.4.33/modules'
make: *** [install-recursive] Error 1

请告知我如何解决此错误。

4

1 回答 1

0

不确定为什么将 brotli 路径设置为 httpd 文件夹 ( --with-brotli=/apps/httpdx64/brotli)?

我像这样编译它(正如我在这里解释的那样):

#You may need to install some dependencies if not already installed on your machine.
#For Centos/RHEL 7 the following should do this for you:
sudo yum install wget
sudo yum install perl
sudo yum install gcc
sudo yum install pcre-devel
sudo yum install cmake.x86_64   

cd ~
mkdir sources
cd sources

#Download and install brotli
git clone https://github.com/google/brotli.git
cd brotli/
git checkout v1.0
mkdir out && cd out
../configure-cmake
make
make test
sudo make install

#Download and install the latest Apache (needs to be 2.4.26 or above)
#For example:
wget http://mirrors.whoishostingthis.com/apache/httpd/httpd-2.4.33.tar.gz
wget https://www.apache.org/dist/httpd/httpd-2.4.33.tar.gz.asc
#Verify the package after download:
gpg --verify httpd-2.4.33.tar.gz.asc)
tar -zxvf httpd-2.4.33.tar.gz
cd httpd-2.4.33
./configure --with-pcre=/usr/bin/pcre-config --enable-ssl --enable-so --enable-brotli --with-brotli=/usr/local/brotli
make
sudo make install

谢谢,巴里

于 2018-04-24T18:45:35.113 回答