apache源代碼編譯,相信很多做 服務器編程的人都存在這樣一個bug:編譯出來的程序中的modules文件夾中,沒有so文件。使用 apachectl -t -D DUMP_MODULES 命令查看加載的模塊都爲static ,資料建議在編譯時命令中加上-share ,但是依舊如此。本文編譯的方式不存在這樣的問題:
首先:編譯apache需要如下文件:
apr:http: http://apr.apache.org/download.cgi
apr-util:http: http: //apr.apache.org/download.cgi
pcre: http://sourceforge.net/projects/pcre
httpd: http://httpd.apache.org/download.cgi
準備這些文件,然後解壓!
結果:
首先,apr ,新建一個編譯文件夾 mkdir /usr/local/web/apr ,進入解壓文件夾,編譯命令如下
./configure --prefix=/usr/local/web/apr
make
make install
接着apr-util ,新建文件夾 mkdir /usr/local/web/apr-util ,進入解壓文件夾,編譯命令如下
./configure --prefix=/usr/local/web/apr-util/ --with-apr=/usr/local/web/apr/
make
make install
然後,pcre ,依舊新建文件夾 mkdir /usr/local/web/pcre 進入解壓文件夾,編譯命令:
./configure --prefix=/usr/local/web/pcre
make
make install
最後,httpd. 新建文件夾 mkdir /usr/local/web/apache2 進入解壓文件夾 ,編譯命令:
./configure --prefix=/usr/local/web/apache2/ --with-apr=/usr/local/web/apr/ --with-apr-util=/usr/local/web/apr-util/ --with-pcre=/usr/local/web/pcre/
make
make install恭喜你,搞定,
結果:
不過,這樣編譯後,編寫模塊開發的過程中,需要連接幾個路徑,注意啊!
這是本人第一次使用linux,支持國產:deepin linux ,用起來比較適合入門的linux用戶,強烈推薦!
原文:http://www.cnblogs.com/jackcin/p/3557410.html