Linux深入探索06-軟件管理與安裝(源碼安裝)

一、簡介

在Linux平臺下扒最,軟件包的類型可以劃分為兩類:源碼包告嘲、二進制包错维。
源碼包:即程序軟件的源代碼(一般也叫Tarball,即將軟件的源碼以tar打包后再壓縮的資源包)橄唬。
二進制包:如 Red Hat發(fā)行版的.rpm包赋焕,Debian發(fā)行版的.deb包。

我將會分三章節(jié)來講解linux中軟件的安裝與管理仰楚,分別是:

  • 源碼安裝(源碼包)
  • RPM與YUM(rpm包:如CentOS系統(tǒng))
  • dpkg與apt-*(deb包:如Unbuntu系統(tǒng))

如果你明確自己要用的是哪種安裝方式隆判,那你也可以只看相關的那一章節(jié)就行。

這一章將要介紹的是Linux平臺下的源碼安裝僧界,關于二進制包的安裝可以查看我接下來的兩篇文章:
-- Linux深入探索07-軟件管理與安裝(RPM與YUM)
-- Linux深入探索08-軟件管理與安裝(dpkg與apt-*)

二侨嘀、源碼安裝

源碼包的安裝主要分為三個步驟,如圖:

1捂襟、最簡單的例子

為了能夠更好的理解源碼包的安裝過程咬腕,這里舉一個最簡單的例子來加以說明。

1)獲取源代碼文件
這里使用C語言來編寫一個最簡單的程序葬荷,輸出“Hello World涨共!”,
首先宠漩,使用命令vim hello.c創(chuàng)建一個C源文件举反,內(nèi)容如下:

#include <stdio.h>

int main(void){
    printf("Hello World!\n");
}

2)編譯
編譯的命令為gcc hello.c
執(zhí)行了上面的命令后則可以發(fā)現(xiàn)當前目錄下多了一個a.out扒吁,該文件即為編譯后生成的二進制文件火鼻。

3)測試結果
運行命令./a.out,則可以得到如下結果。

舉上面這個例子只是為了能夠更加好的理解軟件在Linux中安裝的原理魁索,在實際中可以說是不會有這么簡單的一個程序來讓你安裝的融撞。一般情況,一個軟件是由一系列的程序文件來組成蛾默,所以現(xiàn)實中的源碼包安裝方法并沒有像上面那個例子那么簡單懦铺,那下面就來介紹一般情況下的源碼包安裝方法捉貌。

2支鸡、源碼包安裝詳解

現(xiàn)實中,使用一個源碼包來安裝程序時趁窃,基本步驟如:

在上圖第二步中的--prefix后面接的路徑表示這個軟件將要安裝到哪個目錄去牧挣,如果沒有指定--prefix=/path這個參數(shù),通常默認為/usr/local醒陆。本人推薦安裝位置為 /usr/local/XXX瀑构,XXX為自己的實際目錄,這樣會方便以后的管理刨摩。

源碼包安裝方式的man文件默認保存在/usr/local/man/usr/local/share/man中寺晌,如果你的安裝路徑自定義為如/usr/local/XXX,則man文件則一般是在/usr/local/XXX/share/man中澡刹。此時如果你想要通過man來查看你所安裝軟件的man手冊呻征,則需要自行修改man的路徑配置文件(可能是man.config或者manpath.config)。需要在相應位置添加如下一行:

MANPATH    /usr/local/XXX/share/man

3罢浇、卸載

通過源碼包安裝的軟件陆赋,當你想要卸載的時候,只需要把整個安裝路徑刪除掉就行了嚷闭,100%卸載攒岛,不會像windows那樣經(jīng)常會殘留那多注冊表之類的垃圾。

根據(jù)你的安裝時候選擇的安裝路徑胞锰,源碼包的卸載又分為兩種情況:
1)如果你安裝時候指定的路徑為: --prefix=/usr/local/XXX灾锯,那么卸載的時候只需要把XXX這個文件夾刪除即可,因為該軟件安裝的所有文件都是放置在XXX這個文件夾嗅榕。
2)但如果你進行源碼包安裝的時候沒有指定位置(默認值一般為/usr/local/)挠进,或指定的位置為--prefix=/usr/local,則這時候你安裝軟件生成的文件將分別存儲在/usr/local/里面的bin誊册、lib或ect等目錄中领突,這時候卸載起來就相對麻煩一點了。

4案怯、源碼包安裝與二進制包的區(qū)別

  • 源碼包的優(yōu)點:
    ① 開源君旦,如果有能力可以修改源代碼
    ② 可以自由選擇所需的功能
    ③ 軟件是編譯安裝,所以更加適合自己的系統(tǒng),更加穩(wěn)定也效率更高
    ④ 卸載方便
  • 源碼包的缺點:
    ① 安裝過程步驟較多金砍,尤其安裝較大的軟件集合時(如LAMP環(huán)境搭建)局蚀,容易出現(xiàn)拼寫錯誤等
    ② 編譯過程時間較長,安裝比二進制安裝時間長
    ③ 因為是編譯安裝恕稠,安裝過程中一旦報錯新手不好解決
  • 二進制包的優(yōu)點:
    ① 包管理系統(tǒng)簡單琅绅,只通過幾個命令就可以實現(xiàn)包的安裝、升級鹅巍、查詢和卸載
    ② 安裝速度比源碼快得多
  • 二進制包的缺點:
    ① 經(jīng)過編譯千扶,不可以再看到源碼
    ② 功能選擇不如源碼包靈活
    ③ 依賴性

參考

書籍:
《鳥哥的Linux私房菜——基礎學習篇》鳥哥
《The Linux Command Line》William E. Shotts, Jr.

最后編輯于
?著作權歸作者所有,轉載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市骆捧,隨后出現(xiàn)的幾起案子澎羞,更是在濱河造成了極大的恐慌,老刑警劉巖敛苇,帶你破解...
    沈念sama閱讀 218,941評論 6 508
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件妆绞,死亡現(xiàn)場離奇詭異,居然都是意外死亡枫攀,警方通過查閱死者的電腦和手機括饶,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,397評論 3 395
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來来涨,“玉大人图焰,你說我怎么就攤上這事∩ㄒ梗” “怎么了楞泼?”我有些...
    開封第一講書人閱讀 165,345評論 0 356
  • 文/不壞的土叔 我叫張陵,是天一觀的道長笤闯。 經(jīng)常有香客問我堕阔,道長,這世上最難降的妖魔是什么颗味? 我笑而不...
    開封第一講書人閱讀 58,851評論 1 295
  • 正文 為了忘掉前任超陆,我火速辦了婚禮,結果婚禮上浦马,老公的妹妹穿的比我還像新娘时呀。我一直安慰自己,他們只是感情好晶默,可當我...
    茶點故事閱讀 67,868評論 6 392
  • 文/花漫 我一把揭開白布谨娜。 她就那樣靜靜地躺著,像睡著了一般磺陡。 火紅的嫁衣襯著肌膚如雪趴梢。 梳的紋絲不亂的頭發(fā)上漠畜,一...
    開封第一講書人閱讀 51,688評論 1 305
  • 那天,我揣著相機與錄音坞靶,去河邊找鬼憔狞。 笑死,一個胖子當著我的面吹牛彰阴,可吹牛的內(nèi)容都是我干的瘾敢。 我是一名探鬼主播,決...
    沈念sama閱讀 40,414評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼尿这,長吁一口氣:“原來是場噩夢啊……” “哼簇抵!你這毒婦竟也來了?” 一聲冷哼從身側響起妻味,我...
    開封第一講書人閱讀 39,319評論 0 276
  • 序言:老撾萬榮一對情侶失蹤正压,失蹤者是張志新(化名)和其女友劉穎欣福,沒想到半個月后责球,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 45,775評論 1 315
  • 正文 獨居荒郊野嶺守林人離奇死亡拓劝,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,945評論 3 336
  • 正文 我和宋清朗相戀三年雏逾,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片郑临。...
    茶點故事閱讀 40,096評論 1 350
  • 序言:一個原本活蹦亂跳的男人離奇死亡栖博,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出厢洞,到底是詐尸還是另有隱情仇让,我是刑警寧澤,帶...
    沈念sama閱讀 35,789評論 5 346
  • 正文 年R本政府宣布躺翻,位于F島的核電站丧叽,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏公你。R本人自食惡果不足惜踊淳,卻給世界環(huán)境...
    茶點故事閱讀 41,437評論 3 331
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望陕靠。 院中可真熱鬧迂尝,春花似錦、人聲如沸剪芥。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,993評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽税肪。三九已至溉躲,卻和暖如春虚吟,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背签财。 一陣腳步聲響...
    開封第一講書人閱讀 33,107評論 1 271
  • 我被黑心中介騙來泰國打工串慰, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人唱蒸。 一個月前我還...
    沈念sama閱讀 48,308評論 3 372
  • 正文 我出身青樓邦鲫,卻偏偏與公主長得像,于是被迫代替她去往敵國和親神汹。 傳聞我的和親對象是個殘疾皇子庆捺,可洞房花燭夜當晚...
    茶點故事閱讀 45,037評論 2 355

推薦閱讀更多精彩內(nèi)容