在 Win32 平台使用 Visual C 构建 nginx
构建步骤 另请参阅 |
先决条件
在 Microsoft Win32® 平台上构建 nginx,您需要:
- Microsoft Visual C 编译器。已知 Microsoft Visual Studio® 8 和 10 可用。
- MSYS 或 MSYS2。
- Perl,如果您想要构建带 SSL 支持的 OpenSSL® 和 nginx。例如 ActivePerl 或 Strawberry Perl。
- Mercurial 客户端。
- PCRE、zlib 和 OpenSSL 库源代码。
构建步骤
在开始构建之前,请确保将 Perl、Mercurial 和 MSYS bin 目录的路径添加到 PATH 环境变量中。要设置 Visual C 环境,请从 Visual C 目录运行 vcvarsall.bat 脚本。
构建 nginx:
- 启动 MSYS bash。
- 从 hg.nginx.org 仓库签出 nginx 源代码。例如:
hg clone http://hg.nginx.org/nginx
- 创建 build 和 lib 目录,并将 zlib、PCRE 和 OpenSSL 库源代码解压缩到 lib 目录中:
mkdir objs mkdir objs/lib cd objs/lib tar -xzf ../../pcre2-10.39.tar.gz tar -xzf ../../zlib-1.3.tar.gz tar -xzf ../../openssl-3.0.10.tar.gz
- 运行 configure 脚本:
auto/configure \ --with-cc=cl \ --with-debug \ --prefix= \ --conf-path=conf/nginx.conf \ --pid-path=logs/nginx.pid \ --http-log-path=logs/access.log \ --error-log-path=logs/error.log \ --sbin-path=nginx.exe \ --http-client-body-temp-path=temp/client_body_temp \ --http-proxy-temp-path=temp/proxy_temp \ --http-fastcgi-temp-path=temp/fastcgi_temp \ --http-scgi-temp-path=temp/scgi_temp \ --http-uwsgi-temp-path=temp/uwsgi_temp \ --with-cc-opt=-DFD_SETSIZE=1024 \ --with-pcre=objs/lib/pcre2-10.39 \ --with-zlib=objs/lib/zlib-1.3 \ --with-openssl=objs/lib/openssl-3.0.10 \ --with-openssl-opt=no-asm \ --with-http_ssl_module
- 运行 make:
nmake