安装 ros 包后,当我执行 rosdep check 时,它显示了一些在 apt-get install 期间未处理的缺失系统依赖项。因此,我使用 rosdep install 安装了它们。但是,当我想删除 ros 包时,
sudo apt-get purge ros-*
sudo apt-get purge python-ros*
sudo apt-get 自动删除
运行上述三个命令似乎只会删除 ros 依赖项,而不会删除系统依赖项。在这种情况下,我该如何删除系统依赖项?谢谢。
PS:我尝试在 Ubuntu 16.04 ARM 上仅安装一个 ros 包。
答案1
简短的回答是,你无法轻易做到这一点。
Apt 会跟踪您指定要安装的软件包(手动的)以及仅包含的软件包(汽车)。
例子:
$ sudo apt install foo bar // Manual
The following additional packages will be installed:
baz, libfoo1, libfoo2, libbar // Auto
管理员命令系统安装“foo”和“bar”。它们将保持安装状态,直到管理员命令系统卸载它们。它们永远不会被自动删除。
如果“bar”实际上是“foo”的依赖项,则无关紧要。人类已经说话了,并且两者都设置为手动的。
管理员有责任跟踪手动选择的依赖项。
如果您的 /var/log/apt 日志回溯得足够远,这些日志将准确地告诉您添加了哪些软件包。这会很有帮助。