Mercurial > hg > nginx-site
view xml/en/docs/howto_build_on_win32.xml @ 2988:8899986c3622
Documented Headers, Request, Response constructors in njs Reference.
author | Yaroslav Zhuravlev <yar@nginx.com> |
---|---|
date | Thu, 06 Jul 2023 12:30:11 +0100 |
parents | 06c7520f1181 |
children | f55e18559df9 |
line wrap: on
line source
<?xml version="1.0"?> <!-- Copyright (C) Nginx, Inc. --> <!DOCTYPE article SYSTEM "../../../dtd/article.dtd"> <article name="Building nginx on the Win32 platform with Visual C" link="/en/docs/howto_build_on_win32.html" lang="en" rev="25"> <section name="Prerequisites"> <para> To build nginx on the <registered>Microsoft Win32</registered> platform you need: <list type="bullet"> <listitem> Microsoft Visual C compiler. <registered>Microsoft Visual Studio</registered> 8 and 10 are known to work. </listitem> <listitem> <link url="https://sourceforge.net/projects/mingw/files/MSYS/">MSYS</link> or <link url="https://www.msys2.org">MSYS2</link>. </listitem> <listitem> Perl, if you want to build <registered>OpenSSL</registered> and nginx with SSL support. For example <link url="http://www.activestate.com/activeperl">ActivePerl</link> or <link url="http://strawberryperl.com">Strawberry Perl</link>. </listitem> <listitem> <link url="https://www.mercurial-scm.org">Mercurial</link> client. </listitem> <listitem> <link url="http://www.pcre.org">PCRE</link>, <link url="http://zlib.net">zlib</link> and <link url="http://www.openssl.org">OpenSSL</link> libraries sources. </listitem> </list> </para> </section> <section id="build_steps" name="Build steps"> <para> Ensure that paths to Perl, Mercurial and MSYS bin directories are added to PATH environment variable before you start build. To set Visual C environment run vcvarsall.bat script from Visual C directory. </para> <para> To build nginx: <list type="bullet"> <listitem> Start MSYS bash. </listitem> <listitem> Check out nginx sources from the hg.nginx.org repository. For example: <programlisting> hg clone http://hg.nginx.org/nginx </programlisting> </listitem> <listitem> Create a build and lib directories, and unpack zlib, PCRE and OpenSSL libraries sources into lib directory: <programlisting> mkdir objs mkdir objs/lib cd objs/lib tar -xzf ../../pcre2-10.39.tar.gz tar -xzf ../../zlib-1.2.11.tar.gz tar -xzf ../../openssl-1.1.1m.tar.gz </programlisting> </listitem> <listitem> Run configure script: <programlisting> 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.2.11 \ --with-openssl=objs/lib/openssl-1.1.1m \ --with-openssl-opt=no-asm \ --with-http_ssl_module </programlisting> </listitem> <listitem> Run make: <programlisting> nmake </programlisting> </listitem> </list> </para> </section> <section id="see_also" name="See also"> <para> <list type="bullet"> <listitem> <link doc="windows.xml"/> </listitem> </list> </para> </section> </article>