軟件包管理 {C語言源代碼編譯安裝三步驟}

本文主要記錄 centos7 編譯安裝 httpd2.4.25 過程,加深記憶及備忘

 

 

一、Linux系統上準備工作

  • 1、關閉防火墻及SElinux(大部分生產中常用,防火墻看生產需要,有些情況不能關閉,但SElinux大部分是關閉掉)(centos 6 關閉防火墻:service iptables? stop? ;? ?chkconfig iptables? off)

1.準備工作,關閉防火墻和SElinux

  • 2、下載開發工具包組:yum? groupinstall? “Development Tools”? ?(中間有空格所以加雙引號,安裝時不區分包名大小寫,卸載時對大小寫敏感)

二、開源程序源代碼的獲取

? ? ? ? ?官方自建站點:www.apache.org? ? ? ? ? ? www.mariadb.org

  • 一種方法:從官網下載程序包、解壓到創建的目錄(方便后期管理):

Apache官網1

Apache官網2

Apache官網3

準備安裝的版本:

Apache官網4

創建一個 src 目錄,將包及解包都放在里面,方便后續管理

c7,下載及解包

  • 第二種方法:直接在centos系統中用wget命令下載,wget??http://archive.apache.org/dist/httpd/httpd-2.4.25.tar.gz

wget命令下載程序包

三、編譯安裝

  • 1、第一步:進入?httpd-2.4.25 目錄,先查看程序自帶安裝的安裝步驟cat README? ?、? ?cat INSTALL? ?、? ?./configure? ?–help? 查看可啟用及禁用的功能。

c7,cat install

c7,解包后進入目錄

  • ? ./configure腳本,定制安裝路徑,檢查依賴的外部環境,如依賴的軟件包。(通常編譯操作所依賴的程序包包名一般類似于name-devel-VERSION)

c7,第一步查錯出問題

第一次報錯,找出缺失的包安裝

c7,找出缺失的包安裝

再次報錯,找到依賴的包

c7,還差包,繼續裝

三次報錯,要注意!系統并不是每次報錯提示都很準確,需要靈活對待!

c7,三次差包,有時候報錯會誤導人,要考慮別的情況

 

  • 2、第二步:make 根據?Makefile.in?生成?makefile?文件,構建應用程序。

? ? ? ? ? ? ? ?make -j 4? ?[&& make install ]? ? ? 指派4個CPU同時執行任務(可與第三步驟同步進行)

  • 3、第三步:make? install 復制文件到指定路徑

? ? ? ? ? ? ? ?安裝完成后制定目錄隨之生成:

c7,安裝成功,相應文件夾生成

  • 4、第四步:/PATH/bin? ?apachectl start? ?執行程序,這里寫絕對路徑是因為默認的搜尋路徑$PATH不包含自建的目錄,所以也可以將自建的目錄添加進$PATH,這樣在別的目錄下不寫絕對路徑也可以執行程序。

5.添加PATH變量搜尋路徑

6.在任何路徑下即可運行

四、網站對應的主目錄

c7,網站對應目錄

 

本文來自投稿,不代表Linux運維部落立場,如若轉載,請注明出處:http://www.www58058.com/96779

(2)
bican813bican813
上一篇 2018-04-22
下一篇 2018-04-22

相關推薦

  • 馬哥教育 – 第二周作業

    一、Linux上的文件管理類命令都有哪些,其常用的使用方法及其相關示例演示。 <1>命令:CP 概念:用來將一個或多個源文件或者目錄復制到指定的目的文件或目錄。它可以將單個源文件復制成一個指定文件名的具體的文件或一個已經存在的目錄下。cp命令還支持同時復制多個文件,當一次復制多個文件時,目標文件參數必須是一個已經存在的目錄,否則將出現錯誤。 語法…

    2018-05-21
  • Linux第1-5天的基礎命令。

      alias 是顯示當前shell中所有別名。 我們可以將一些常用且較長的命令進行簡化,就是別名。 alias 新的命令 = ‘原命令’ ????unalias 刪除別名 -p? 是查看系統中已經設置的別名   bc?? 是linux中的計算器語言??? ^C? 退出   clock 顯示硬件時間 -s 使系統時間和硬件時間同…

    Linux筆記 2018-03-31
  • Linux筆記 2018-04-07
  • 作業管理(任務計劃)

    任務計劃就好比我們的鬧鐘一樣,到了指定的時間就該去做對應的事情。 任務計劃分為兩類: 一次性的任務計劃:只執行一次就結束 周期性的任務計劃:每隔一定的周期去做相同的事情 at命令就是專門用來處理一次性的計劃任務 batch也是處理一次性的計劃任務但是它是由系統自行選擇空閑時間去執行此處指定的任務(不常用) crontab可以根據定義的周期信息,循環的去做一些…

    Linux筆記 2018-05-05
  • Linux第一周命令總結

    hostname? 完整主機名? cat +文件路徑 可查看文件信息 cat /etc/centos-release 查看文件? 版本的名稱、發行時間所有shell cat/etc/shells? 顯示當前系統使用的 lsd_release -a? 命令? 查看版本 /etc/centos-release 是文本文件? cat是查看文本的命令 uname-r…

    2018-07-22
  • 加密與安全

    加密與安全 SSH端口轉發 SSH 會自動加密和解密所有 SSH 客戶端與服務端之間的網絡數據。但是,SSH 還能夠將其他 TCP 端口的網絡數據通過 SSH 鏈接來轉發,并且自動提供了相應的加密及解密服務。這一過程也被叫做“隧道”(tunneling),這是因為 SSH 為其他 TCP 鏈接提供了一個安全的通道來進行傳輸而得名。例如,Telnet,SMTP…

    Linux筆記 2018-06-11
欧美性久久久久