windows下vc編譯和debug nginx
阿新 • • 發佈:2018-07-06
topic 命令行 zlib err pack its fd_set figure htm
總體來說,各個步驟以及版本參考官方文檔http://nginx.org/en/docs/howto_build_on_win32.html一點沒錯,有些細節沒說清楚。
To build nginx:
- Start MSYS bash.
- Check out nginx sources from the hg.nginx.org repository. For example: 必須使用源代碼倉庫中的版本,tar.gz發行包中的雖然是源碼,但是不包含windows平臺庫,否則會提示缺少windows相關頭文件
hg clone http://hg.nginx.org/nginx
- Create a build and lib directories, and unpack zlib, PCRE and OpenSSL libraries sources into lib directory:
mkdir objs mkdir objs/lib cd objs/lib tar -xzf ../../pcre-8.41.tar.gz tar -xzf ../../zlib-1.2.11.tar.gz tar -xzf ../../openssl-1.0.2n.tar.gz
- Run configure script: windows下中文簡體編譯的時候,先將ssl/bad_dtls_test.c編碼格式改為unicode或者gb2312,否則默認警告視為錯誤會編譯出錯
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/pcre-8.41 --with-zlib=objs/lib/zlib-1.2.11 --with-openssl=objs/lib/openssl-1.0.2n --with-openssl-opt=no-asm --with-select_module --with-http_ssl_module
- Run make: 在vs命令行下執行,而不是msys窗口
nmake
-
nginx.exe生成後,雙擊啟動的時候立刻就消失了。從cmd打開執行,可以知道是少了error/conf/temp等目錄所致,自己看提示應該可以解決。
參考:
http://nginx.org/en/docs/howto_build_on_win32.html
https://blog.csdn.net/i348018533/article/details/51701865
https://blog.csdn.net/hard_cold/article/details/13989337
http://www.xuebuyuan.com/739815.html
https://www.itsvse.com/thread-2784-1-1.html
https://blog.csdn.net/a923751813/article/details/50511007
https://www.ruby-forum.com/topic/6875190
後面有時間開始debug繼續出。
windows下vc編譯和debug nginx