linux依賴包是什么

linux依賴包是指“庫文件”,大部分依賴包都是一些庫文件,有動態庫也有靜態庫;Linux系統和其他操作系統一樣,都是模塊化的設計,也就是說功能互相依靠,有些功能需要一些其他功能來支撐,這樣可以提高代碼的可重用性。

linux依賴包是什么

本教程操作環境:linux5.9.8系統、Dell G3電腦。

什么是依賴包?為什么要下載依賴包?

Linux系統和其他操作系統一樣,都是模塊化的設計,也就是說功能互相依靠,有些功能需要一些其他功能來支撐,這樣可以提高代碼的可重用性:

大部分依賴包都是一些庫文件,有動態庫也有靜態庫,一個程序的依賴包如果沒有安裝,只安裝了這個程序本身是不能使用

你可以理解為似windows的庫文件,譬如DLL

比如我要裝某個軟件,這個軟件又依賴于某個開發包,這個開發包包含這個軟件所要運行的環境文件,這就是依賴關系。

再舉個例子,比如我要去優酷看視頻一樣。

我就需要需要裝flash。因為優酷的播放器是基于flash開發的。

如何查詢我要安裝的包所需要的依賴包?

這個時候就不得不用到一個特別普通的命令了,那就是rpm或者yum .

那如何查詢呢?

1、通過rpm查詢

[root@testvm02?~]#?rpm?-q?ghostscript???#查看對應的rpm包. ghostscript-8.70-19.el6.x86_64 [root@testvm02?~]#?rpm?-qR?ghostscript??#R的意思就是requires就是依賴哪些軟件包.
/bin/sh?? /sbin/ldconfig?? /sbin/ldconfig?? config(ghostscript)?=?8.70-19.el6 ghostscript-fonts?? libICE.so.6()(64bit)?? libSM.so.6()(64bit)?? libX11.so.6()(64bit)?? libXext.so.6()(64bit)?? libXt.so.6()(64bit)?? libc.so.6()(64bit)?? libc.so.6(GLIBC_2.11)(64bit)?? libc.so.6(GLIBC_2.2.5)(64bit)?? libc.so.6(GLIBC_2.3)(64bit)?? libc.so.6(GLIBC_2.3.4)(64bit)?? libc.so.6(GLIBC_2.4)(64bit)?? libc.so.6(GLIBC_2.7)(64bit)?? libcairo.so.2()(64bit)?? libcom_err.so.2()(64bit)?? libcrypt.so.1()(64bit)?? libcups.so.2()(64bit)?? libcupsimage.so.2()(64bit)?? libdl.so.2()(64bit)?? libdl.so.2(GLIBC_2.2.5)(64bit)?? libfontconfig.so.1()(64bit)?? libgs.so.8()(64bit)?? libgssapi_krb5.so.2()(64bit)

備注:以上查詢出來的就是依賴的軟件包.

2.通過yum方式來查詢依賴的程序

[root@testvm02?~]#?yum?deplist?ghostscript
Loaded?plugins:?product-id,?subscription-manager This?system?is?not?registered?to?Red?Hat?Subscription?Management.?You?can?use?subscription-manager?to?register. Finding?dependencies:? package:?ghostscript.i686?8.70-19.el6 ??dependency:?libc.so.6(GLIBC_2.11)???????#依賴的庫或者程序 ???provider:?glibc.i686?2.12-1.149.el6????#這個庫是通過哪個rpm包安裝的. ??dependency:?libXext.so.6 ???provider:?libXext.i686?1.3.2-2.1.el6 ??dependency:?libpng12.so.0 ???provider:?libpng.i686?2:1.2.49-1.el6_2 ??dependency:?libpng12.so.0(PNG12_0) ???provider:?libpng.i686?2:1.2.49-1.el6_2 ??dependency:?libpthread.so.0(GLIBC_2.1) ???provider:?glibc.i686?2.12-1.149.el6 ??dependency:?libdl.so.2 ???provider:?glibc.i686?2.12-1.149.el6

3.查看這個軟件被哪些軟件依賴(即如果我要刪除了會對哪些軟件的運行有影響)

[root@testvm02?~]#?rpm?-q?nfs-utils?????????#查看這個軟件是否安裝. nfs-utils-1.2.3-54.el6.x86_64 [root@testvm02?~]#?rpm?-e?--test?nfs-utils??#通過--test進行測試刪除,查看是否有依賴關系,如果有會阻止刪除.測試是否能夠刪除. error:?Failed?dependencies: ????nfs-utils?>=?1.2.1-11?is?needed?by?(installed)?nfs-utils-lib-1.1.5-9.el6.x86_64??#有其他的軟件包依賴這個軟件包,如果刪除可能對這個程序有影響. [root@testvm02?~]#?rpm?-e?--test?nfs-utils error:?Failed?dependencies: ????nfs-utils?>=?1.2.1-11?is?needed?by?(installed)?nfs-utils-lib-1.1.5-9.el6.x86_64 [root@testvm02?~]#?rpm?-e?--test?gcc??#測試刪除gcc,沒有報錯,也就是沒有別的地方依賴它,可以進行刪除. [root@testvm02?~]#?rpm?-q?gcc?????????#上面的--test并沒有真正刪除 gcc-4.4.7-11.el6.x86_64 [root@testvm02?~]#?rpm?-e?gcc?????????#不帶--test參數,進行真正的刪除. [root@testvm02?~]#?rpm?-q?gcc?????????#再次查詢沒有這個gcc已經被刪除掉了. package?gcc?is?not?installed

相關推薦:《Linux視頻教程

以上就是

? 版權聲明
THE END
喜歡就支持一下吧
點贊15 分享