程序包編譯安裝

一、幾個概念

    1、開放源碼

        程序代碼,人類可能讀懂的程序語言,但是計算機不能識別和執行;

    2、編譯程序

        將程序代碼翻譯成計算機可以識別的語言;

    3、二進程程序 

        經過編譯程序翻譯后得到的可以被執行的程序文件。

二、編譯源程序的步驟

    1、configure

        檢測程序,并生成makefile文件,其檢測的內容如下:

            是否有適合的編譯程序;

            是否有本軟件所需的函數庫或其他需要的相關軟件;

            操作系統平臺是否支持些軟件;

            內核的頭定義文件是否存在。

        configure腳本的使用:

            1)獲取幫助

                ./configure –help

            2)較通用的一些選項

            安裝路徑相關

                –prefix =/path/to/somewhere:指定安裝路徑

                –sysconfdir=/path/to/somewhere:指定配置文件安裝路徑

            指定啟用/禁用的特征

                –enable -FEATURE:例如 –enable -fpm

                –disable -FEATURE:例如 –disable -sochet

            指定所依賴的功能 :程序或文件

                –with -FUNCTION [=/path/to/somewhere]

                –without -FUNCTION

    2、make

        根據makefile文件中所記錄的內容,來對源碼進行編譯。

    3、make install 

        安裝軟件。

三、編譯安裝Nginx

    前提:在進行編譯安裝前必須安裝gcc編譯器。

    1、檢查運行環境

1.png

        –prefix:指定nginx的安裝路徑;

        –conf-path:指定主配置文件的位置;

        –with-pcre:指定pcre源碼包的位置;

        –with-zlib:指定zlib源碼包的位置;

        注意:pcre和zlib都是源碼包的位置,而不是安裝的路徑,如下圖所示:

1.1.png

    2、編譯程序(調用gcc)

2.png

    3、安裝程序 

3.png

    4、啟動nginx服務

4.png

        使用瀏覽器訪問測試:

5.png

    5、安裝后的配置

        1)讓二進制程序直接運行,而無須輸入路徑

            在目錄/etc/profile.d/中創建nginx.sh文件,內容如下:

6.png

            重新登錄終端后,測試效果:

7.png8.png

        2)導出手冊頁(模擬)

            因為nginx沒有man手冊,我們只能假設nginx的man手冊的路徑為/usr/local/nginx/man,如果想使用man命令直接調用手冊的話,可以進行以下操作:

            在/etc/man.config文件中加入一行,如下圖所示:

9.png10.png

        3)導出庫文件(模擬)

            在/etc/ld.so.conf.d/目錄中創建nginx.conf文件

11.png            觸發系統重新搜索所有的庫文件并生成緩存:

12.png

        4)導出頭文件(模擬)

            假設nginx的頭文件在/usr/local/nginx/include目錄中;

            系統找頭文件的路徑:/usr/include

            導出方式是創建鏈接文件:

                ln -sv /usr/local/nginx/include /usr/include/nginx

原創文章,作者:petmaster,如若轉載,請注明出處:http://www.www58058.com/3975

(0)
petmasterpetmaster
上一篇 2015-05-11 14:11
下一篇 2015-05-11 14:18

相關推薦

  • VRRP協議

    VRRP協議 Virtual Router Redundancy Protocol 虛擬路由器冗余協議。 Vrrp協議在linux上的實現(軟件實現)是keepalived。 VRRP簡單的講,就是心跳信息。 主節點不斷的向備用節點廣播信息,信息包含自己的心跳和優先級。 不光如此,還可以在主節點上安裝一個監控,來監控其他資源,如果這些資源運行正常,就可以給其…

    2016-11-02
  • Linux文件管理類命令相關

    Linux上的文件管理類命令都有哪些,其常用的使用方法及其相關示例演示。 1)、查看文件命令: (1)ls命令: list,列出目錄下的內容 語法: ls [OPTION]… [FILE]… 常用選項: -a: 顯示所有文件,包括隱藏文件; -A:顯示除.和..之外的所有文件; -l: –long, 長格式列表,即顯示文件的詳細屬性信息; -h, –huma…

    Linux干貨 2016-11-06
  • 【26期】Linux第四周學習小總結

        第四周了,轉眼就學習有關Linux的知識一月了,從開始的懵懵懂懂,到現在的懵懵懂懂,不變的是無邊無際的知識,改變的是一小片迷霧被我們漸漸撥開了一角,學習的枯燥和充實,陪我們走完這安穩的最后學習時光。     今天分享的是一些我們本周學習的變量方面的東西,那么,什么是變量呢?變量來源于數學,是計算機語言中能儲存計…

    2017-08-05
  • 19道小米網運維工程師筆試真題,你能通關嗎?

    第一部分:Linux基礎 題目1: 有一百個圖片文件,它們的地址都是 http://down.xiaomi.com/img/1.png http://down.xiaomi.com/img/2.png … 一直到http://down.xiaomi.com/img/100.png 批量下載這100個圖片文件,并找出其中大于500KB的文件。 題目2: 一個文…

    2017-09-08
  • Shell腳本編程入門

    認識Shell Shell原意為貝殼 Linux系統中的shell是一個特殊的應用程序,它介于操作系統內核與用戶之間,充當一個“命令解釋器”的角色,負責接收用戶輸入的操作指令(命令)并進行解釋,將需要執行的操作傳遞給內核執行,并輸出執行結果。 可以使用命令查看當前使用的是哪種shell以及當前Linux系統中都支持哪些shell種類。   查看當前…

    Linux干貨 2016-08-12
  • N25-第五周

    一.顯示當前系統上root、fedora或user1用戶的默認shell;    [root@localhost ~]# useradd fedora && useradd user1 && grep "^\(root\|fedora\|user1\)" /etc/passwd | cu…

    Linux干貨 2017-01-09

評論列表(1條)

  • stanley
    stanley 2015-05-11 14:16

    干凈,清爽,贊

欧美性久久久久