在Windows上編譯Nginx實(shí)戰(zhàn)演練
2023-02-25 15:42 作者:FoolRabbitCode | 我要投稿

官方編譯說(shuō)明
環(huán)境準(zhǔn)備
1.?Microsoft Visual Studio(Microsoft Visual C 編譯器),下載地址:
。2. Git(備用),下載地址:
。3. MSYS2,下載地址:
。4. Perl,編譯OpenSSL時(shí)需要,編譯出來(lái)的Nginx支持SSL。
or 。5.?
,? ?and? 。下載源碼
源碼地址:
通過(guò)界面zip可以下載源碼包,下載后進(jìn)行解壓,然后把pcre2-10.39.tar.gz、zlib-1.2.11.tar.gz、openssl-1.1.1m.tar.gz解壓后的源碼包目錄。
編譯
使用MSYS2配置
進(jìn)入Nginx源碼目錄,直接執(zhí)行以下命令對(duì)3個(gè)依賴包進(jìn)行解壓操作。
然后輸入以下配置指令進(jìn)行配置:
配置過(guò)程中,可能會(huì)提示錯(cuò)誤:

這個(gè)是MSVC版本識(shí)別錯(cuò)誤導(dǎo)致,直接打開(kāi) auto/cc/msvc文件,
對(duì)其進(jìn)行編輯,根據(jù)注釋說(shuō)明和本地實(shí)際安裝的MSVC編譯器情況,設(shè)置版本號(hào),如下(添加NGX_MSVC_VER=19.00,不要輸入空格):

?使用MSVC編譯
使用Microsoft Visual Studio的編譯工具中的“適用于 VS 2017 的 x86_x64 兼容工具命令提示”這個(gè)工具進(jìn)行編譯。編譯成功后,會(huì)在objs文件夾生成Nginx.exe文件。

?針對(duì)編譯過(guò)程最后提示的sed命令缺少的問(wèn)題,可以添加Git下的 \usr\bin 路徑添加到系統(tǒng)環(huán)境變量的Path中即可解決。
標(biāo)簽:nginx