ubuntu18.04LTS下解决Nginx添加openssl模块编译时报错问题

ubuntu18.04LTS下解决Nginx添加openssl模块编译时报错问题

    • 报错提示
    • 解决方法
      • 第一步安装libssl-dev
      • 第二步下载libssl-dev
      • 第三步修改编译配置
      • 最后一步编译安装

报错提示

make -f objs/Makefile
make[1]: Entering directory '/home/zhang/share/nginx-1.14.0'
make[1]: *** No rule to make target '/home/zhang/share/nginx-1.14.0/packages/include/openssl/ssl.h', needed by 'objs/src/core/nginx.o'.  Stop.
make[1]: Leaving directory '/home/zhang/share/nginx-1.14.0'
Makefile:8: recipe for target 'build' failed
make: *** [build] Error 2

解决方法

第一步安装libssl-dev

sudo apt-get install libssl-dev

点击参考链接

第二步下载libssl-dev

打开ubuntu包管理网址 https://packages.ubuntu.com/trusty/libssl-dev
下载http://archive.ubuntu.com/ubuntu/pool/main/o/openssl/openssl_1.0.1f.orig.tar.gz 解压文件

mkdir /home/zhang/share/nginx-1.14.0/packages
cd /home/zhang/share/nginx-1.14.0/packages/
wget http://archive.ubuntu.com/ubuntu/pool/main/o/openssl/openssl_1.0.1f.orig.tar.gz
tar -xf openssl_1.0.1f.orig.tar.gz

第三步修改编译配置

打开nginx源文件下的/home/zhang/share/nginx-1.14.0/auto/lib/openssl/conf文件:
找到这么一段代码:

CORE_INCS="$CORE_INCS $OPENSSL/.openssl/include"
CORE_DEPS="$CORE_DEPS $OPENSSL/.openssl/include/openssl/ssl.h"
CORE_LIBS="$CORE_LIBS $OPENSSL/.openssl/lib/libssl.a"
CORE_LIBS="$CORE_LIBS $OPENSSL/.openssl/lib/libcrypto.a"

修改成以下代码:

CORE_INCS="$CORE_INCS $OPENSSL/include"
CORE_DEPS="$CORE_DEPS $OPENSSL/include/openssl/ssl.h"
CORE_LIBS="$CORE_LIBS $OPENSSL/libssl.a"
CORE_LIBS="$CORE_LIBS $OPENSSL/libcrypto.a"

最后一步编译安装

./configure --prefix=/home/zhang/share/nginx-1.14.0/local --with-openssl=/home/zhang/share/nginx-1.14.0/packages/openssl-1.0.1f --with-http_ssl_module 
make && make install

你可能感兴趣的:(nginx研究)