程序包編譯安裝

一、幾個概念

    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
下一篇 2015-05-11

相關推薦

  • mitaka版本openstack網絡之open vSwitch

    作者:【吳業亮】 博客:http://blog.csdn.net/wylfengyujiancheng 一、硬件配置及服務拓撲1. controller節點:一塊網卡2. 網絡節點:四塊網卡。3. 計算節點:三塊網卡 controller節點1. 運行 neutron數據庫2. 運行消息隊列服務3. 運行認證。4. 運行OpenStack計算nova相關網絡…

    2018-01-22
  • 馬哥教育網絡20期+第8周練習博客

    1、請描述網橋、集線器、二層交換機、三層交換機、路由器的功能、使用場景與區別。 網橋:鏈接層設備,基于MAC地址過濾。 集線器:物理層設備,基本都屬于半雙工模式。集線器與網橋在現在的局域網中基本都不用了。 二層交換機:基本MAC轉發數據,功能齊全的可支持VLAN等功能。常見的有100/1000M、16口/24口/48口。 三層交換機:功能齊全的交換機,具備都…

    Linux干貨 2016-08-01
  • LVM

       本節主要為raid和LVM相關 一、作業 1、創建一個2G的文件系統,塊大小為2048byte,預留1%可用空間,文件系統ext4,卷標為TEST,要求此分區開機后自動掛載至/test目錄,且默認有acl掛載選項 2、寫一個腳本,完成如下功能: (1) 列出當前系統識別到的所有磁盤設備 (2) 如磁盤數量為1,則顯示其空間使用信息 …

    Linux干貨 2016-08-30
  • Linux文本三劍客之grep

    一、定義:                 GREP  :Global search REgular expression and Print out the line的縮寫。是一種強大的文本搜索工具,根據用戶指定的“模式”對目標文本逐行進行匹配檢查;并把匹配的行打印出…

    Linux干貨 2016-04-05
  • 操作系統圖形界面發展史(1981-2009)

    注意,本文這羅列了從1981年以來有重大意義的操作系統的圖形界面。 首先,先介紹兩個網站: http://www.guidebookgallery.org/ 如果你比較關注圖形化UI的設計, 可以上這個網站上看看。 http://toastytech.com/guis/index.html 這是一個操作系統圖形界面收集的網站,上面幾科包括…

    Linux干貨 2016-05-17
  • 作業:0805

    1.查出用戶UID最大值的用戶名、UID及shell類型 > cat /etc/passwd|cut -d: -f 1,3,7 |sort -t: -k2 -n| tail -1 2.查出/tmp的權限,以數字方式顯示 > st…

    Linux干貨 2016-08-08

評論列表(1條)

  • stanley
    stanley 2015-05-11 14:16

    干凈,清爽,贊

欧美性久久久久