标签: dependencies

有没有办法确定应该加载哪些包或库来支持可执行文件?

我想在计算机上安装一个无法重新编译的可执行文件,它不是作为包构建的,我想下载运行它们所需的库。

以下是ldd在其上运行的输出的一部分

libpango-1.0.so.0 => /usr/lib/i386-linux-gnu/libpango-1.0.so.0 (0xb702f000)
libcairo.so.2 => /usr/lib/i386-linux-gnu/libcairo.so.2 (0xb6f64000)
libatk-1.0.so.0 => /usr/lib/i386-linux-gnu/libatk-1.0.so.0 (0xb6f43000)
libsqlite3.so.0 => /usr/lib/i386-linux-gnu/libsqlite3.so.0 (0xb6e9e000)
libc.so.6 => /lib/i386-linux-gnu/libc.so.6 (0xb6cf4000)
/lib/ld-linux.so.2 (0xb786e000)
libxcb.so.1 => /usr/lib/i386-linux-gnu/libxcb.so.1 (0xb6cd3000)
libgio-2.0.so.0 => /usr/lib/i386-linux-gnu/libgio-2.0.so.0 (0xb6b7c000)
libm.so.6 => /lib/i386-linux-gnu/libm.so.6 (0xb6b4f000)
Run Code Online (Sandbox Code Playgroud)

是否有工具可以使用此信息来选择应下载哪些包,或者更好地仅提取列出的库及其依赖项,以最大限度地减少磁盘使用量?系统在无头 VM 上运行,程序将通过 VNC 显示。

虽然我怀疑一个完整的图形桌面将提供大部分所需的库,但我只想下载所需的库、它们的依赖项以及刚好足以支持它的 X Windows 包。

libraries dependencies package-management

13
推荐指数
1
解决办法
1万
查看次数

Yum 和推荐/推荐的包

我想在我的Fedora系统上安装一个软件包,但它有很多不合理的依赖项(我确信它们实际上并不是必需的)。

我曾经在Debian上工作,其中apt-get允许您系统地排除推荐建议的软件包,只安装严格要求的依赖项。

有没有办法用Yum做到这一点?

yum apt dependencies

12
推荐指数
2
解决办法
1万
查看次数

dpkg:依赖问题阻止了 initramfs-tools 的配置

我像往常一样用这个命令开始升级我的 Kubuntu 12.04 系统:

sudo apt-get --show-upgraded dist-upgrade
Run Code Online (Sandbox Code Playgroud)

我后来回来了,但失败了:

Preconfiguring packages ...
(Reading database ... 478306 files and directories currently installed.)
Preparing to replace  ...
Unpacking replacement base-files ...
Processing triggers for man-db ...
Processing triggers for install-info ...
...
Processing triggers for initramfs-tools ...
update-initramfs: Generating /boot/initrd.img-3.8.0-32-lowlatency

gzip: stdout: No space left on device
E: mkinitramfs failure cpio 141 gzip 1
update-initramfs: failed for /boot/initrd.img-3.8.0-32-lowlatency with 1.
dpkg: error processing initramfs-tools (--unpack):
 subprocess installed post-installation script returned error exit …
Run Code Online (Sandbox Code Playgroud)

dpkg dependencies software-installation package-management

12
推荐指数
1
解决办法
7万
查看次数

如何在删除centos 7中的包的同时删除所有已安装的依赖包?

我使用的是 CentOS 7。我安装了 okular,它是一个 PDF 查看器,命令如下:

sudo yum install okular
Run Code Online (Sandbox Code Playgroud)

如下图所示,它安装了 37 个依赖包来安装 okular。

已安装的依赖项

但我对应用程序的功能不满意,我决定将其删除。问题是,如果我使用以下命令将其删除:

sudo yum autoremove okular
Run Code Online (Sandbox Code Playgroud)

它只删除四个依赖包。

使用 autoremove 删除软件包

如果我用命令删除它:

sudo yum remove okular
Run Code Online (Sandbox Code Playgroud)

它只删除了一个包,即 okular.x86_64。

现在,我的问题是有没有办法使用命令删除所有 37 个已安装的软件包,还是必须一个一个删除所有软件包?

yum terminal centos dependencies uninstall

12
推荐指数
2
解决办法
5万
查看次数

Systemd:查找服务的依赖项

systemctl list-dependencies postgres
Run Code Online (Sandbox Code Playgroud)

将列出服务的所有依赖项postgres。如何找到服务(或单位或目标)的所有依赖项?

dependencies systemd

12
推荐指数
1
解决办法
1万
查看次数

同一个 systemd 服务的“之前”和“想要”?

这个systemd 单元文件示例中:

# systemd-timesyncd.service
...

Before=time-sync.target sysinit.target shutdown.target
Conflicts=shutdown.target
Wants=time-sync.target
Run Code Online (Sandbox Code Playgroud)

systemd-timesyncd.service应该开始之前 time-sync.target。这定义了一个排序依赖

但同时systemd-timesyncd.service time-sync.target。那么time-sync.target它的需求依赖是什么

这种关系的用例是什么,为什么它们彼此之间没有冲突?

dependencies systemd systemd-unit

12
推荐指数
2
解决办法
1909
查看次数

可执行文件到另一台 Linux 机器的可移植性

我已经在一台 Linux 机器 (M1) 上安装了程序 Motion,并希望在另一台 (M2) 上安装相同的程序。

这个程序有多种版本,我忘记了我用过哪个版本,所以我可以直接从 M1 复制 user/bin/motion 文件并将其放在 M2 的 user/bin/motion 中吗?

我知道配置文件在哪里,所以我会移动它,但我不确定运动的工作版本在 M2 上使用什么视频驱动程序;有什么办法可以查到吗?

有没有办法找出它的依赖关系?

libraries dependencies executable portability

11
推荐指数
1
解决办法
4970
查看次数

在 jessie 上从 sid 安装 PHP7.0

我想在 Debian Jessie 上尝试 PHP7.0,并尝试从 sid 安装它。但是,php7.0取决于php7.0-common哪个取决于php-common > 18while php-commonin sid 是 17。这是否意味着目前根本无法php7.0从该发行版安装?这是为什么?

我知道可以从源代码安装,例如here,我只是询问官方软件包。


注意:sid 中​​的包已经修复,现在(2016 年 1 月 6 日)可以从那里安装。

debian dependencies php package-management

11
推荐指数
1
解决办法
3万
查看次数

在 Debian 上安装 Git 时未满足的依赖项

我正在尝试安装 gitDebian 8.6 Jessie并且遇到了一些依赖性问题。奇怪的是,Git当我习惯 Linux 时,我最近在 VM 中安装了几次没有任何问题。

apt-get install git

结果

The following packages have unmet dependencies:
  git : Depends: liberror-perl but is not installable
        Recommends: rsync but it is not installable
E: Unable to correct problems, you have held broken packages.
Run Code Online (Sandbox Code Playgroud)

更新

我的 sources.list

在此处输入图片说明

好像是我系统的问题。我无法再正确安装任何东西。我在安装类似Pulseaudio几天前成功安装的东西时遇到了依赖性问题。

debian git apt dependencies package-management

11
推荐指数
1
解决办法
3万
查看次数

自动安装 dpkg-checkbuilddeps 检测到的未满足的构建依赖项

是否有一个命令可以安装dpkg-checkbuilddeps将列出的所有未满足的构建依赖项?

我尝试sed输出并将其提供给apt-get install,但它似乎非常笨拙,并且由于某种原因在某些环境中不起作用。

sudo apt-get install --yes $(dpkg-checkbuilddeps | sed 's/([^)]*)//g' | sed 's/dpkg-checkbuilddeps:\serror:\sUnmet build dependencies://g')
Run Code Online (Sandbox Code Playgroud)

有没有更好的办法?

debian dpkg apt dependencies

11
推荐指数
1
解决办法
1万
查看次数