国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 系統 > Linux > 正文

Linux源碼包安裝和卸載教程(以apache為例)

2024-08-27 23:57:01
字體:
來源:轉載
供稿:網友
由于 linux 操作系統開放源代碼,因此在其上安裝的軟件大部分也都是開源軟件,例如 Apache、Tomcat 和 PHP 等。開源軟件基本都提供源碼下載,可采用源碼安裝的方式安裝軟件。

注意,本節使用的源碼包,指的是軟件所有源代碼的壓縮包,其后綴名為 ".tar.gz" 或 ".tar.bz2";而 SRPM 源碼包本質上屬于 RPM 包,也就是源碼的RPM包,其文件后綴為 ".src.rpm"。雖然都叫源碼包,但不是一碼事。

軟件的源代碼,也就是軟件的原始數據,任何人都可以通過源代碼查看該軟件的設計架構和實現方法,但軟件源代碼無法再計算機中直接運行安裝,需要將源代碼通過編譯轉換為計算機可以識別的機器語言,然后才可以安裝。

Linux 系統中,絕大多數軟件的源代碼都是用 C 語言編寫的,少部分用 C++(或其他語言)編寫。因此要想安裝源碼包,必須安裝 gcc 編譯器(如果涉及 C++ 源碼程序,還需要安裝 gcc-c++)。

安裝 gcc 之前,可先使用如下命令看看是否已經安裝:

[root@localhost ~]# rpm -q gcc
gcc-4.4.6-4.el6.i686

如果未安裝,考慮到安裝 gcc 所依賴的軟件包太多,推薦大家使用 yum 安裝 gcc。具體安裝方式可閱讀《Linux yum命令》一節。

除了安裝編譯器,還需要安裝 make 編譯命令。要知道,編譯源碼包可不像編譯一個 hello.c 文件那樣輕松,包中含大量的源碼文件,且文件之間有著非常復雜的關聯,直接決定著各文件編譯的先后順序,因此手動編譯費時費力,而使用 make 命令可以完成對源碼包的自動編譯。

同樣,在安裝 make 命令之前,可使用如下命令查看其是否已經安裝:

[root@localhost yum. repos.d]# rpm -q make
make-3.81-20.el6.i686

如果未安裝,可使用 yum -y install make 命令直接安裝 make。

安裝好了 gcc 編譯器和 make 編譯工具,接下來學習使用源碼包安裝軟件。

Linux源碼包安裝軟件

本節仍然以安裝 apache 為例,安裝過程分為如下幾步:
  1. 下載 apache 源碼包。該軟件的源碼包可通過官方網站 /d/file/202003/vps5bwidusx105.cgi ".tar.gz" 或 ".tar.bz2" )。

    將各種文件分門別類保存在對應的目錄中,應該成為合格 Linux 管理員約定俗成的習慣。Linux 系統中用于保存源代碼的位置主要有 2 個,分別是 "/usr/src" 和 "/usr/local/src",其中 "/usr/src" 用來保存內核源代碼,"/usr/local/src" 用來保存用戶下載的源代碼。
  2. 將源碼包進行解壓縮,使用命令如下:

    [root@localhost ~]#tar -zxvf httpd-2.2.9.tar.gz|more

  3. 進入解壓目錄,執行如下命令:

    [root@localhost ~]# ls
    anaconda-ks.cfg httpd-2.2.9 httpd-2.2.9.tar.gz install.log install.log.syslog
    [root@localhost ~]# cd httpd-2.2.9

  4. ./configure 軟件配置與檢查。這一步主要完成以下 3 項任務:
    • 檢測系統環境是否符合安裝要求。
    • 定義需要的功能選項。通過 "./configure--prefix=安裝路徑" 可以指定安裝路徑。注意,configure 不是系統命令,而是源碼包軟件自帶的一個腳本程序,所以必須采用 "./configure" 方式執行("./" 代表在當前目錄下)。

      "./configure" 支持的功能選項較多,可執行 "./configure--help" 命令查詢其支持的功能,例如:

      [root@localhost httpd-2.2.9]#./configure --help|more
      #查詢apache支持的選項功能(不是必需步驟)

    • 把系統環境的檢測結果和定義好的功能選項寫入 Makefile 文件,因為后續的編譯和安裝需要依賴這個文件的內容。

    此步具體執行代碼如下:

    [root@localhost httpd-2.2.9]# ./configure --prefix=/usr/local/apache2
    checking for chosen layout...Apache
    checking for working mkdir -p…yes
    checking build system type...i686-pc-linux-gnu
    checking host system type...i686-pc-linux-gnu
    checking target system typa...i686-pc-linux-gnu
    …省略部分輸出…

    --prefix 選項的含義為指定安裝目錄。

    此命令沒有加載其他功能,只是指定安裝目錄。需要說明的是,"/usr/local/apache2" 目錄不需要手工建立,安裝完成后會自動建立(這個目錄是否生成也是檢測軟件是否正確安裝的重要標志)。
  5. make 編譯。make 會調用 gcc 編譯器,并讀取 Makefile 文件中的信息進行系統軟件編譯。編譯的目的就是把源碼程序轉變為能被 Linux 識別的可執行文件,這些可執行文件保存在當前目錄下。

    執行的編譯命令如下:

    [root@localhost httpd-2.2.9]# make

    編程過程較為耗時,需要有足夠的耐心。
  6. 正式開始安裝軟件,這里通常會寫清程序的安裝位置,如果沒有,則建議讀者把安裝的執行過程保存下來,以備將來刪除軟件時使用。安裝指令如下:

    [root@localhost httpd-2.2.9]# make install

    整個過程不報錯,即為安裝成功。

    安裝源碼包過程中,如果出現“error”(或“warning”)且安裝過程停止,表示安裝失??;反之,如果僅出現警告信息,但安裝過程還在繼續,這并不是安裝失敗,頂多使軟件部分功能無法使用。
     
注意,如果在 "./configure" 或 "make" 編譯中報錯,則在重新執行命令前一定要執行 make clean 命令,它會清空 Makefile 文件或編譯產生的 ".o" 頭文件。

Linux源碼包卸載

通過源碼包方式安裝的各個軟件,其安裝文件獨自保存在 /usr/local/ 目錄下的各子目錄中。例如,apache 所有的安裝文件都保存在 /usr/local/apache2 目錄下。這就為源碼包的卸載提供了便利。

源碼包的卸載,只需要找到軟件的安裝位置,直接刪除所在目錄即可,不會遺留任何垃圾文件。需要讀者注意的是,在刪除軟件之前,應先將軟件停止服務。

以刪除 apache 為例,只需關閉 apache 服務后執行如下命令即可:

[root@localhost ~]# rm -rf /usr/local/apache2/

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 南雄市| 湖南省| 福海县| 焦作市| 年辖:市辖区| 山阴县| 蒙山县| 天津市| 宜川县| 沙坪坝区| 乐亭县| 论坛| 崇仁县| 乌审旗| 大埔县| 建宁县| 平南县| 平乡县| 台中县| 甘孜县| 汾阳市| 香港 | 靖宇县| 邳州市| 如皋市| 珲春市| 庐江县| 长寿区| 论坛| 嘉黎县| 常宁市| 黎城县| 万源市| 新源县| 临邑县| 云梦县| 醴陵市| 永丰县| 溧水县| 天全县| 西吉县|