nginx是乙個高效能的http和反向**伺服器。其是開源的,並且是跨平台的,通常nginx執行在linux平台下,也可執行於windows、freebsd等,本文主要講解在windows系統中編譯nginx原始碼。
在mingw32下使用gcc編譯nginx原始碼
1、 開啟mingw32並切換到當前**目錄
--prefix=」c:/nginx」是nginx的安裝目錄,注意一定要寫路徑中的斜槓,一定要是「/」
-d fd_setsize=4096是為了避免出現執行時的錯誤提示
-d __no_mingw_lfs是為了避免編譯時出現ssize_t、off_t型別錯誤
-d __watcomc__是為了避免編譯時出現nginx shmtx錯誤
由於是簡單示例,採用--without-http_rewrite_module、--without-http_gzip_module避免nginx依賴於其他庫
3、更改objs/makefile
去除objs/makefile中的-werror,忽略將警告當成錯誤提示。
在objs/makefile中查詢advapi32.lib、ws2_32.lib,並補全路徑,改為:"c:\program files\microsoft sdks\windows\v7.0a\lib\advapi32.lib" "c:\program files\microsoft sdks\windows\v7.0a\lib\ws2_32.lib"
4、make
5、make install
此時nginx便安裝到了c:/nginx目錄下。
在mingw32下使用vc編譯nginx原始碼
1、 開啟mingw32並切換到當前**目錄
2、 export path=$path:"c:\program files\microsoft visual studio 10.0\vc\bin":"c:\program files\microsoft visual studio 10.0\common7\ide":"c:\program files\microsoft sdks\windows\v7.0a\bin"
設定當前的環境變數,注意路徑中的斜槓,一定要使用「\」
開始配置,注意路徑中的斜槓,一定要使用「/」
4、更改objs/ ngx_auto_config.h
將第一行巨集定義中的引號轉義,改為類似如下的樣子:
5、更改objs/makefile
在objs/makefile中查詢kernel32.lib user32.lib advapi32.lib ws2_32.lib,並補全路徑,改為:"c:\program files\microsoft sdks\windows\v7.0a\lib\kernel32.lib" "c:\program files\microsoft sdks\windows\v7.0a\lib\user32.lib" "c:\program files\microsoft sdks\windows\v7.0a\lib\advapi32.lib" "c:\program files\microsoft sdks\windows\v7.0a\lib\ws2_32.lib"。並加入兩個額外的路徑,如: "c:\program files\microsoft visual studio 10.0\vc\lib\libcmt.lib" "c:\program files\microsoft visual studio 10.0\vc\lib\oldnames.lib"
6、nmake
7、nmake install
此時nginx便安裝到了c:/nginx目錄下。
如上預設編譯的都是release版本的nginx程式,如果需要編譯debug版,更改auto/cc/gcc、auto/cc/msvc中對應配置即可。
zlib庫在windows系統中的編譯
zlib是提供資料壓縮之用的函式庫,此函式庫為自由軟體,由jean loup gailly與mark adler所開發,zlib使用deflate演算法,最初是為libpng函式庫所寫的,後來普遍為許多軟體所使用。1.安裝mingw5.1.4 2.安裝msys 1.0.10和msysdtk 1.0....
在Windows下編譯OpenSSL
如何在windows下編譯openssl vs2005使用vc8的cl編譯器 1 安裝activeperl 初始化的時候,需要用到perl直譯器 2 使用vs2005下的visual studio 2005 command prompt進入控制台模式 這個模式會自動設定各種環境變數 3 解壓縮ope...
openssl在windows下面編譯
折騰了1天,終於在windows下面把openssl編譯成靜態庫,測試編譯執行通過了不容易哦 3 cmd開啟命令列,cd 到vs安裝目錄 c microsoft visual studio 10.0 vc 執行vcvarsall.bat檔案,設定編譯環境 4 cd 進入 d openssl 1.0....