編譯源代碼的方式安裝軟件包
解壓文件 (axel..爲例)
tar xf axel...tar.gz
解壓完成後會在工作目錄下生成一個axel..的目錄
1.在此目錄中找到configure並執行
#./configure options
--help 獲取幫助信息
--preofix= 安裝路徑
--bindir= 可執行文件存放位置
--etcdir= 配置文件的存放位置
--mandir= man文檔存放位置
--locale=
--i8n=0/1 是否開啓國際功能
此命令會與Makefile.in生成Makefile文件,Makefile.settings存放的有./configure命令指定的內容
2.#make 編譯二進制
3.安裝
#make install
Apache
./configure --sysconf= 指定配置文件存放位置
編譯過程與上述過程類似
剛完成安裝後,使用apachectl命令,應該無法找到此命令,如果能找到,說明已安裝了httpd
如果此時使用rpm安裝了httpd(使用 rpm -q httpd 查詢),則make install會因出現衝突而異常,所以需要卸載,httpd包,並且卸載已安裝
的Apache文件
1.刪除httpd包
yum remove httpd
2.卸載Apache文件,只需將安裝路徑(./configure --prefix= 指定的)刪除即可,即刪除$prefix指向的目錄
rm -rf $prefix
上述完成以後,不需要再完成完成./configure(檢查本地環境)和make(編譯),只需執行#make install即可
如果別的程序需要使用到Apache的庫文件(lib),使用手冊(man) 可執行程序(bin) 還有頭文件(include),我們必須能讓系統找到這些文件,所以
在需要的時候必須導出這些文件
假設我們的Apache安裝在/usr/local/apache/下
1.導出庫文件
1.在/etc/ld.so.conf/新建一個以.conf結尾的文件,並將此Apache庫文件路徑添加至此文件當中比如
#vim /etc/ld.so.conf/httpd.conf
/usr/local/Apache/lib
2.此時系統無法知道做了什麼改變,必須使用ldconfig 讓系統重新安裝庫文件
#ldconfig -v 顯示相關信息
2.可執行程序導出方法(其實就是讓系統能找到可執行文件)
1.暫時性的,重啓就消失
#export PATH=$PATH:/usr/local/apache/bin
2.永久性的,就寫入配置文件
對所有用戶有效 #vim /etc/pfofile
pathmunge /usr/local/apache/bin
僅對某個用戶有效
#vim ~/.bash_profile
PATH=$PATH:/usr/local/apache/bin
3.man文件路徑導出方法
臨時使用 man -M /usr/local/apache/man httpd 來查找httpd命令
編輯/etc/man.config文件,新增加如下一行
MANPATH /usr/local/apache/man
4.頭文件
創建軟鏈接
#ln -s from to
/usr/local/apache/include /usr/include/httpd
系統頭文件一般放到/usr/include