Dependencies 是否可以安装x11而不引入数百个其他软件包?
我肯定这是个愚蠢的问题,但我还是要问。Dependencies 是否可以安装x11而不引入数百个其他软件包?,dependencies,x11,rpm,opensuse,xterm,Dependencies,X11,Rpm,Opensuse,Xterm,我肯定这是个愚蠢的问题,但我还是要问。 是否可以在OpenSuSE机器上安装xterm和xorg-x11-fonts软件包,而不引入大量它似乎依赖的其他软件包?这一系列软件包中的所有东西真的需要吗?如果没有,那么我想知道的是如何精简该列表,并且仍然拥有一个功能强大的Xterm。(例如,可能会将一个软件包降低几个级别,并强制它在没有某些依赖项的情况下安装)。如果您在每一步都花足够的时间整理依赖项,那么您可能能够做到这一点 尽管如此,我并不认为这是一个简单的过程,甚至不一定是一个富有成效的过程。如果
是否可以在OpenSuSE机器上安装xterm和xorg-x11-fonts软件包,而不引入大量它似乎依赖的其他软件包?这一系列软件包中的所有东西真的需要吗?如果没有,那么我想知道的是如何精简该列表,并且仍然拥有一个功能强大的Xterm。(例如,可能会将一个软件包降低几个级别,并强制它在没有某些依赖项的情况下安装)。如果您在每一步都花足够的时间整理依赖项,那么您可能能够做到这一点 尽管如此,我并不认为这是一个简单的过程,甚至不一定是一个富有成效的过程。如果依赖关系发生变化,它也将在以后的某个日期处于潜在的混乱状态。您还需要继续维护此块,因为将来的升级可能会引入跳过的包
这通常也不是一个很好的方法。如果您真的对抑制依赖性感兴趣,那么最好尝试自己从源代码构建xterm(尽管这实际上可能没有多大帮助)。如果您使用的是一个基于Red Hat的发行版,那么通常的回答是展示如何使用
yum
查找依赖项。OpenSUSE不使用yum
,但提供了类似的工具zypper
如前所述,列出一份清单会有所帮助。如果我跑
zypper search --requires xterm
仅显示了十几个包裹:
S | Name | Summary
--+---------------------------------+------------------------------------------------
i | codelite | Powerful open-source, cross platform code editor
| eaglemode | Eagle Mode the deep application Cosmos
| leechcraft-shaitan | LeechCraft Shaitan Module
i | lxterminal-lang | Languages for package lxterminal
| package-lists-openSUSE-GNOME-cd | Patterns for Installation (full ftp tree)
| package-lists-openSUSE-KDE-cd | Patterns for Installation (full ftp tree)
| package-lists-openSUSE-X11-cd | Patterns for Installation (full ftp tree)
| package-lists-openSUSE-images | Patterns for Installation (full ftp tree)
i | xdg-menu | XDG Menus for WindowMaker and other Window Manager
i | xdm | X Display Manager
i | xinit | X Window System initializer
i | xterm | X terminal emulator (development version)
但是用于xorg-x11-font
的同一命令显示了200多个软件包,包括xorg-x11-server
然而,以这种方式查看依赖关系只会给故事带来一个方面:它显示了删除给定包的效果。实际问题是:添加这两个包的副作用是添加哪些包。该列表通常比--requires
选项显示的列表短(通常短得多)
例如,如果您确实只希望xterm
在计算机上可用,以便可以ssh
进入服务器并在本地计算机上运行xterm
,则远程计算机上不需要X服务器。需要的是xterm
使用的字体和运行库。您可以更粗略地了解这些库正在使用什么
rpm -qR xterm
例如:
/bin/bash
/bin/sh
/bin/sh
/bin/sh
aaa_base
libICE.so.6()(64bit)
libX11.so.6()(64bit)
libXaw.so.7()(64bit)
libXft.so.2()(64bit)
libXmu.so.6()(64bit)
libXpm.so.4()(64bit)
libXt.so.6()(64bit)
libc.so.6()(64bit)
libc.so.6(GLIBC_2.11)(64bit)
libc.so.6(GLIBC_2.14)(64bit)
libc.so.6(GLIBC_2.15)(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)
libfontconfig.so.1()(64bit)
libtinfo.so.5()(64bit)
libutempter.so.0()(64bit)
luit
perl
rpmlib(CompressedFileNames) <= 3.0.4-1
rpmlib(PayloadFilesHavePrefix) <= 4.0-1
rpmlib(PayloadIsLzma) <= 4.4.6-1
/bin/bash
/垃圾箱/垃圾箱
/垃圾箱/垃圾箱
/垃圾箱/垃圾箱
aaa_基地
libICE.so.6()(64位)
libX11.so.6()(64位)
libXaw.so.7()(64位)
libXft.so.2()(64位)
libXmu.so.6()(64位)
libXpm.so.4()(64位)
libXt.so.6()(64位)
libc.so.6()(64位)
libc.so.6(GLIBC_2.11)(64位)
libc.so.6(GLIBC_2.14)(64位)
libc.so.6(GLIBC_2.15)(64位)
libc.so.6(GLIBC_2.2.5)(64位)
libc.so.6(GLIBC_2.3)(64位)
libc.so.6(GLIBC_2.3.4)(64位)
libc.so.6(GLIBC_2.4)(64位)
libfontconfig.so.1()(64位)
libtinfo.so.5()(64位)
libutempter.so.0()(64位)
路易特
perl
rpmlib(CompressedFileNames)您应该得到十几个包,而不是“一吨”。这些将包括库(但不包括服务器)。到底有多少个包?在这里包括一个列表可能会有所帮助。谢谢。这基本上是我期待听到的。我只是希望我错了。从源代码构建xterm并不能解决OPs问题,相反,它会使系统更新变得更加困难,并防止破坏他的xterm配置,从而使问题更加严重。@ThomasDickey我的观点,尽管我在这里没有解释清楚,如果他自己构建它,可能会选择退出某些依赖项。发行版提供的包选择的依赖项。