編譯源代碼的方式安裝軟件包

編譯源代碼的方式安裝軟件包
解壓文件 (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

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章