新的挑戰,寫 Apache module,正確來說應該是改寫。但是細節還是滿多的,需要記錄一下!
 
而且我想需要寫一個系列的文章來說明一下!
第一步驟,當然是需要取得所需要的函式庫來 compiler 囉。
 
我用的環境是
Apache 2.2.4 (include source code) 
Perl:ActivePerl-5.12.2.1202
    
Tools:apxs (win32 version)
 
Compiler:VS2010
  • 安裝 apache、ActivePerl
    Apache 的部分我是用 appserv,安裝上應該沒有困難。
    ActivePerl 安裝上也應該沒有困難。所以就不多說了。
  • 準備 apache source library
    將 apache source 中的 include 與 lib 複製到 apache 下。我的 Apache 目錄是 C:\AppServ\Apache2.2\ ,所以這下面會多兩個目錄,include 與 lib。
  • 設定 apxs
    將 apxs 複製到 C:\AppServ\Apache2.2\bin\apxs 下。然後進入命令提示字元,輸入 Configure.pl
    C:\AppServ\Apache2.2\bin\apxs>Configure.pl
     
    Use "C:\AppServ\Apache2.2" for your Apache2 directory? [yes]
     
    apxs.bat has been created under C:\AppServ\Apache2.2\bin.
    apr-1-config.pl.bat has been created under C:\AppServ\Apache2.2\bin.
    apu-1-config.pl.bat has been created under C:\AppServ\Apache2.2\bin.
    此時會產生一個 apxs.bat ,這個就是我們需要用到的程式!
  • Compiler
    接下來就是要 Compiler 了。因為是在命令提示字元下 Compiler,而 VS2010 有許多相關的環境變數需要設定,所以 "務必" 要使用 Visual Studio 命令提示字元 (2010) 而不是一般的命令提示字元。這個程式可在 VS2010 的工具中找到!
    首先先切換到你程式的目錄,然後直接下指令:
    c:\appserv\apache2.2\bin\apxs -llibhttpd -llibapr-1 -llibaprutil-1 -Wc,/MT  -c xxx.c yyy.c zzz.c

    需要 compiler 的部分就是要自己加上你的程式囉!
    如果 Compiler 成功的話,就會產生一個 .so 的檔案,到時候就加到你的 httpd.conf 中即可!
     
Facebook 討論區載入中...