我是 SUSE 新手,不了解如何使用 zypper 安装软件包。或者说,我知道可以使用“install”子命令,但它经常找不到我想要的东西。
例如,我需要libpcap-devel
获取pcap.h
头文件和可链接库。SUSE 网站说软件包可用,但当我尝试安装时它没有显示。同时 zypper 说它已安装,但文件.h
不在那里:
$ sudo zypper install libpcap-dev
Refreshing service 'nu_novell_com'.
Loading repository data...
Reading installed packages...
'libpcap-dev' not found.
Resolving package dependencies...
Nothing to do.
$ sudo zypper search pcap
Refreshing service 'nu_novell_com'.
Loading repository data...
Reading installed packages...
S | Name | Summary | Type
--+-----------------+--------------------------------+-----------
| libpcap | A Library for Network Sniffers | srcpackage
i | libpcap0 | A Library for Network Sniffers | package
i | slessp1-libpcap | Recommended update for libpcap | patch
$ sudo zypper install libpcap
Refreshing service 'nu_novell_com'.
Loading repository data...
Reading installed packages...
'libpcap0' providing 'libpcap' is already installed.
Resolving package dependencies...
有什么建议吗?
答案1
我对您的存储库持怀疑态度nu_novell_com
。该存储库由 SuSE Linux Enterprise 使用,而不是 openSUSE。此外,您已slessp1-libpcap
安装的事实进一步证明您使用的是 SLE 存储库,而不是 openSUSE 存储库。
如果是这种情况,则说明您使用了错误的 repo,我对于您遇到的问题并不感到十分惊讶。
可以通过以下方式添加 12.1 版 openSUSE repo(您链接到的版本):
zypper ar http://download.opensuse.org/distribution/12.1/repo/oss/ OpenSUSE-12.1-OSS
zypper ref
这将添加存储库并刷新以确保其已更新软件包列表。这应该可以帮助您获取适合您安装的库。
由于你正在运行 SLES,你可以找出哪些文件做过通过以下方式获取 libpcap0 包:
rpm -ql libpcap0
这将为您提供文件列表。也许您要查找的 .h 文件藏在某个奇怪的地方。
另外,您可能想考虑查看 SLE11 SDK。它还有一个 libpcap0 包,但我不能 100% 确定,因为我不再拥有授权的 SLES 安装,所以我可以查看 :P。