是否有工具可以找出哪些包提供文件?

时间:2009-09-30 19:58:30

标签: linux ubuntu configure package-managers

例如,如果./configure或Make告诉我我缺少libX11.so.6,并且它在我的系统上无处可去,是否有我可以输入的工具或网站

  

libX11.so.6


然后是分布/拱门并返回

  

libx11-6   libx11-6-debug [或者其他;询问README可能会返回大量的条目]

http://sysinf0.klabs.be/为某些发行版和体系结构做了类似的事情,但它似乎没有更新的发行版。此外,他们没有文件名条目,因此您需要Google“packagename site:sysinf0.klabs.be”。

我对Ubuntu最感兴趣,但同样了解其他发行版的类似工具也不错。

4 个答案:

答案 0 :(得分:3)

Debian通过网站做到了这一点:

  • 搜索搜索软件包内容
  • 下的Packages页面
  • answer in this example
  • 选项选择哪个'包含名称包含关键字的文件的软件包'用于'any'架构上的不稳定分发(因为它是最大的)

Ubuntu可能会做类似的事情,但我不太了解网站/启动板。

您也可以获取索引文件ftp://ftp.us.debian.org/debian/dists/sid/Contents-i386.gz,但由于它经常更改,网站选项可能更方便。

答案 1 :(得分:2)

$ sudo apt-get install apt-file
$ sudo apt-file update
$ apt-file search libX11.so.6

apt-file将允许您列出和搜索软件包的内容,无论它们是否已安装在您的系统上。

$ sudo apt-get install auto-apt
$ sudo auto-apt update
$ sudo auto-apt updatedb
$ sudo auto-apt update-local
$ auto-apt run ./configure

为了实现更多自动化,auto-apt将检测访问不存在文件的尝试,并自动提示您安装提供这些文件的软件包。

答案 2 :(得分:0)

还有许多其他工具可以做到这一点 检查这个伟大的页面:http://www.debianhelp.co.uk/findfile.htm 它适用于debian或Ubuntu

答案 3 :(得分:0)

如果您的计算机上有文件,并且您想知道哪个程序包负责,那么(在Debian和Ubuntu上)就是......

$ dpkg -S FILENAME