刪除http rpm包,從新編譯apache的艱難過程

  昨天下午看到虛擬機上面默認rpm包安裝的apache,突然以爲,留着幹嗎,索性本身編譯一個玩玩兒,因而呼,直接用yum刪除了原有的rpm包,刪完以後才發現,各類依賴所有被刪除。mysql

  好吧,看到被刪除的這一堆包,我預料到的,個人編譯之類確定不會輕鬆到哪裏去。話說爲何我必定要刪掉原來的,本身編譯一個呢,事情是這樣滴,我看了一下默認安裝的近程模式爲prefork,n多檔案都在說,worker的的模式有不少優勢,那我就來看看二者之間的區別嘛,閒話很少說,正文開始。sql

   (無圖無真相,可是總算有點記錄的意思)apache

  首先,apache官網下載apache最新的源碼包,彷佛是2.4,回來以後解壓,進入目錄,./configure 好,問題出現,提示說找不到apr,乖乖,果真,依賴一併刪掉就是麻煩呀,繼續回到apache官網,下載apr,apr-util,記得好像都是1.4的版本。ide

  既然apr是apache的接口程序,必須,先把apr源碼安裝好了,apache,你又要被推遲了。ui

  好,解壓apr,進入目錄,./configure,乖乖,問題出現了,提示rm: cannot remove `libtoolT’: No such file or directory,沒辦法,google之,看到不少童鞋遇到這類問題,可是,奇怪的是,他們都是在安裝mysql的時候遇到的問題,算了,死馬當活馬醫吧,用一下他們提供的解決辦法,事實證實,對apr的源碼是無效滴。google

  怎麼辦,查看readme文件,對啦,要知道,安裝一格源碼,readme纔是最重要滴,以前必定要看,好了,readme裏面找到了問題所在,原來,在config以前須要作buildconf的操做,那爲何有報錯就不奇怪了。接口

  好,按照readme的步驟走,先./buildconf,咦不錯,木有報錯,繼續,./configure ,啊哦,同樣報錯繼續出現,難道,難道以前的config出了差錯,好吧,刪除這個解壓包,從新解壓,再來一遍。rem

  按照readme的步驟,./buildconf ,./confiure ,make ,make install  OK,編譯完成,大功告成。源碼

  接下來編譯apr-util,完成虛擬機

  接下來回到apache,咱們開始編譯apache拉,啊哦,問題依然出現,缺乏libpcre,原本想要偷懶一點,利用yum把libpcre裝上呢,惋惜的是,yum源裏面竟然沒有這個庫,沒辦了,本身編譯吧,雖然幾經波折,可是最終,總算是pcre編譯成功,總算能夠編譯apache了,介於我編譯的依賴比較多,這些依賴的路徑須要在編譯apache的時候一條條制定,哇哇,顯得我很厲害呢。

./configure -prefix=PATH --with-mpm=worker --enable-so --enable-rewrite --apr=PATH --apr-util=PATH --apr-util=PATH --pcre=PATH

好了,接下來經過make &&make install就能夠享受奇妙的apache之旅啦。

相關文章
相關標籤/搜索