linux源碼安裝軟體的方法( 揭曉linux源碼怎麼安裝軟體)

Linux軟體安裝方式:

1.apt,rpm,yum;

2.源代碼安裝;

3.二進位安裝。

一,apt,rpm,yum軟體安裝方式:

apt(Advancd Packaging Tool)高級包裝工具,軟體包管理器

例,apt-get isntall w3m

當你在執行安裝操作時,首先apt-get 工具會在本地的一個資料庫中搜索關於 w3m 軟體的相關信息,並根據這些信息在相關的伺服器上下載軟體安裝,這裡大家可能會一個疑問:既然是在線安裝軟體,為啥會在本地的資料庫中搜索?要解釋這個問題就得提到幾個名詞了:

① 軟體源鏡像伺服器

② 軟體源

我們需要定期從伺服器上下載一個軟體包列表,使用 sudo apt-get update 命令來保持本地的軟體包列表是最新的(有時你也需要手動執行這個操作,比如更換了軟體源),而這個表裡會有軟體依賴信息的記錄,對於軟體依賴,我舉個例子:我們安裝 w3m 軟體的時候,而這個軟體需要 libgc1c2 這個軟體包才能正常工作,這個時候 apt-get 在安裝軟體的時候會一併替我們安裝了,以保證 w3m 能正常的工作。

1、APT方式(apt是Ubuntu的軟體包管理工具)

(1)普通安裝:apt-get install softname1 softname2 …;

(2)修復安裝:apt-get -f install softname1 softname2… ;(-f 是用來修復損壞的依賴關係)

(3)重新安裝:apt-get –reinstall install softname1 softname2…;

2、Ubuntu中軟體包的卸載方法

1、APT方式

(1)移除式卸載:apt-get remove softname1 softname2 …;(移除軟體包,當包尾部有+時,意為安裝)

(2)清除式卸載 :apt-get –purge remove softname1 softname2…;(同時清除配置)

(3) 清除式卸載:apt-get purge sofname1 softname2…;(同上,也清除配置文件)

常用參數:

-y 自動回應是否安裝軟體包,在一些自動化腳本中經常用到

-s 模擬安裝

-q 靜默安裝

-f 修復損壞的依賴關係

— reinstall 重新安裝已經安裝但可能存在問題的軟體包

— install-suggests 同時安裝APT給出的建議安裝的軟體包

apt-get包含的常用工具:

update 從軟體源鏡像伺服器上下載/更新用於更新本地軟體源的軟體包

upgrade 升級本地可更新的全部軟體包,但存在依賴問題時將不會升級,通常會在更新之前執行一次update

purge 與remove相同,但會完全移除軟體包,包含其配置文件

autoremove 移除之前被其他軟體包依賴,但現在不再被使用的軟體包

常用的APT命令:

apt-cache search package 搜索包

apt-cache show package 獲取包的相關信息,如說明、大小、版本等

apt-cache depends package 了解使用依賴

apt-cache rdepends package 查看該包被哪些包依賴

sudo apt-get install package 安裝包,apt會自動下載安裝,若有依賴性軟體包,apt也會自動下載安裝

sudo apt-get install package –reinstall 重新安裝包

sudo apt-get -f install 修復安裝”-f = –fix-missing”

sudo apt-get remove package 刪除包,如有依賴的軟體包,則會一併移除

sudo apt-get remove package –purge 刪除包,包括刪除配置文件等

sudo apt-get update 更新源(該指令是用來取得記錄在 /etc/apt/sources.list 內的遠端伺服器的軟體包清單,在使用apt-get dist-upgrade指令升級軟體前,一定要記得先用此指令將軟體包清單更新)

sudo apt-get upgrade 更新已安裝的軟體包

sudo apt-get dist-upgrade 升級系統

sudo apt-get dselect-upgrade 使用 dselect 升級

sudo apt-get build-dep package 安裝相關的編譯環境

apt-get source package 下載該包的源代碼

sudo apt-get clean && sudo apt-get autoclean 清理無用的包(當使用 apt-get install 指令安裝後,下載的軟體包會放置在 /var/cache/apt/archives,使用apt-get clean指令可將其刪除)

sudo apt-get check 檢查是否有損壞的依賴

rpm(Red Hat Linux軟體包管理工具)

rpm原本是Red Hat Linux發行版專門用來管理Linux各項套件的程序

語法:

rpm [選項] [軟體包]

常用選項:

-a:查詢所有套件;

-b<完成階段><套件檔>+或-t <完成階段><套件檔>+:設置包裝套件的完成階段,並指定套件檔的文件名稱;

-c:只列出組態配置文件,本參數需配合”-l”參數使用;

-d:只列出文本文件,本參數需配合”-l”參數使用;

-e<套件檔>或–erase<套件檔>:刪除指定的套件;

-f<文件>+:查詢擁有指定文件的套件;

-h或–hash:套件安裝時列出標記; -i:顯示套件的相關信息;

-i<套件檔>或–install<套件檔>:安裝指定的套件檔;

-l:顯示套件的文件列表;

-p<套件檔>+:查詢指定的RPM套件檔;

-q:使用詢問模式,當遇到任何問題時,rpm指令會先詢問用戶;

-R:顯示套件的關聯性信息;

-s:顯示文件狀態,本參數需配合”-l”參數使用;

-U<套件檔>或–upgrade<套件檔>:升級指定的套件檔;

-v:顯示指令執行過程;

-vv:詳細顯示指令執行過程,便於排錯。

1.安裝

rpm -ivh example.rpm 安裝 example.rpm 包並在安裝過程中顯示正在安裝的文件信息及安裝進度;

2.查詢

RPM 查詢操作

命令:

rpm -q …

附加查詢命令:

a 查詢所有已經安裝的包以下兩個附加命令用於查詢安裝包的信息;

i 顯示安裝包的信息;

l 顯示安裝包中的所有文件被安裝到哪些目錄下;

s 顯示安裝版中的所有文件狀態及被安裝到哪些目錄下;以下兩個附加命令用於指定需要查詢的是安裝包還是已安裝後的文件;

p 查詢的是安裝包的信息;

f 查詢的是已安裝的某文件信息;

例,rpm -qa | grep tomcat4 查看 tomcat4 是否被安裝;

3.RPM 卸載操作

命令:

rpm -e 需要卸載的安裝包

在卸載之前,通常需要使用rpm -q …命令查出需要卸載的安裝包名稱。

舉例如下:

rpm -e tomcat4 卸載 tomcat4 軟體包;

4.RPM 升級操作

命令:

rpm -U 需要升級的包

舉例如下:

rpm -Uvh example.rpm 升級 example.rpm 軟體包;

注意:但是rpm軟體包之間的依賴性問題往往會很繁瑣,尤其是軟體由多個rpm包組成時。所以很多情況下我們出於方便,選擇使用yum包管理器來進行安裝。Yum(全稱為 Yellow dog Updater, Modified)是一個在Fedora和RedHat以及SUSE中的Shell前端軟體包管理器。基於RPM包管理,能夠從指定的伺服器(例如淘寶鏡像、騰訊雲、網易鏡像等,可自己配置)自動下載RPM包並且安裝,可以自動處理軟體包的依賴關係,一次安裝所有依賴的軟體包,無須繁瑣地一次次下載、安裝。

yum(Yellow dog Updater, Modified):

yum命令是在Fedora和RedHat以及SUSE中基於rpm的軟體包管理器,它可以使系統管理人員交互和自動化地更細與管理RPM軟體包,能夠從指定的伺服器自動下載RPM包並且安裝,可以自動處理依賴性關係,並且一次安裝所有依賴的軟體包,無須繁瑣地一次次下載、安裝。

yum和rpm的區別:

① rpm軟體包形式的管理雖然方便,但是需要手工解決軟體包的依賴關係。很多時候安裝一個軟體安裝一個軟體需要安裝1個或者多個其他軟體,手動解決時,很複雜,yum解決這些問題。Yum是rpm的前端程序,主要目的是設計用來自動解決rpm的依賴關係,其特點:

1) 自動解決依賴關係;2)可以對rpm進行分組,基於組進行安裝操作;3)引入倉庫概念,支持多個倉庫;4)配置簡單

② yum倉庫用來存放所有的現有的.rpm包,當使用yum安裝一個rpm包時,需要依賴關係,會自動在倉庫中查找依賴軟體並安裝。倉庫可以是本地的,也可以是HTTP、FTP、nfs形式使用的集中地、統一的網路倉庫。

③ 倉庫的配置文件/etc/yum.repos.d目錄下

1.安裝:

yum install package1 #安裝指定的安裝包package1

2.更新和升級:

yum update #全部更新

yum update package1 #更新指定程序包package1

yum check-update #檢查可更新的程序

yum upgrade package1 #升級指定程序包package1

yum groupupdate group1 #升級程序組group1

3.卸載:

yum remove package1

4.清除緩存:

yum clean packages #清除緩存目錄下的軟體包

yum clean headers #清除緩存目錄下的 headers

yum clean oldheaders #清除緩存目錄下舊的 headers

5.查找和顯示:

yum info package1 #顯示安裝包信息package1

yum list #顯示所有已經安裝和可以安裝的程序包

yum list package1 #顯示指定程序包安裝情況package1

yum groupinfo group1 #顯示程序組group1信息yum search string 根據關鍵字string查找安裝包

二,源代碼安裝方式:

源碼安裝(.tar、tar.gz、tar.bz2、tar.Z)

首先解壓縮源碼壓縮包然後通過tar命令來完成

a.解xx.tar.gz:tar zxf xx.tar.gz

b.解xx.tar.Z:tar zxf xx.tar.Z

c.解xx.tgz:tar zxf xx.tgz

d.解xx.bz2:bunzip2 xx.bz2

e.解xx.tar:tar xf xx.tar

然後進入到解壓出的目錄中,建議先讀一下README之類的說明文件,因為此時不同源代碼包或者預編譯包可能存在差異,然後建議使用ls -F –color或者ls -F命令(實際上我的只需要 l 命令即可)查看一下可執行文件,可執行文件會以*號的尾部標誌。

一般依次執行:

./configure (檢查編譯環境)

make (對源代碼進行編譯)

sudo make install (將生成的可執行文件安裝到當前計算機中)

make clean (選擇執行,主要是用來清除一些臨時文件)

即可完成安裝。

解釋:

1、configure,這一步一般用來生成 Makefile,為下一步的編譯做準備,你可以通過在 configure 後加上參數來對安裝進行控制,比如代碼:./configure –prefix=/usr 意思是將該軟體安裝在 /usr 下面,執行文件就會安裝在 /usr/bin (而不是默認的 /usr/local/bin),資源文件就會安裝在 /usr/share(而不是默認的/usr/local/share)。同時一些軟體的配置文件你可以通過指定 –sys-config= 參數進行設定。有一些軟體還可以加上 –with、–enable、–without、–disable 等等參數對編譯加以控制,你可以通過允許 ./configure –help 察看詳細的說明幫助。

2、make,這一步就是編譯,大多數的源代碼包都經過這一步進行編譯(當然有些perl或python編寫的軟體需要調用perl或python來進行編譯)。如果 在 make 過程中出現 error ,你就要記下錯誤代碼(注意不僅僅是最後一行),然後你可以向開發者提交 bugreport(一般在 INSTALL 里有提交地址),或者你的系統少了一些依賴庫等,這些需要自己仔細研究錯誤代碼。

3、make insatll,這條命令來進行安裝(當然有些軟體需要先運行 make check 或 make test 來進行一些測試),這一步一般需要你有 root 許可權(因為要向系統寫入文件)。

三,二進位安裝:

二進位包的安裝比較簡單,我們需要做的只是將從網路上下載的二進位包解壓後放到合適的目錄,然後將包含可執行的主程序文件的目錄添加進PATH環境變數即可。

原創文章,作者:投稿專員,如若轉載,請註明出處:https://www.506064.com/zh-tw/n/284314.html

(0)
打賞 微信掃一掃 微信掃一掃 支付寶掃一掃 支付寶掃一掃
投稿專員的頭像投稿專員
上一篇 2024-12-22 15:06
下一篇 2024-12-22 15:07

相關推薦

發表回復

登錄後才能評論