通过包在 Linux 中安装程序

通过包在 Linux 中安装程序

我正在尝试创建一个*.deb-Package 来安装我编写的程序。它由三个可执行文件组成,它们散列位于同一子目录中。例子:

.../myprogram/
    |
    +- Program A
    +- Program B
    +- Program C

我以为我可以将它们存储在/usr/share/...但是 lintian 给出了一个错误。所以我读到,/usr/share/...依赖于 arch 的对象不能有一席之地。但还有什么地方呢?可执行文件必须分组在“自己的”子文件夹中。

当我查看例如时,/usr/bin/没有程序的子文件夹。

答案1

Debian 二进制包不应包含/opt.根据 FHS,这仅适用于本地安装的软件包。这会是由林天标记。这样做会让你被 Debian 自动拒绝,假设它已经通过了你的赞助商。官方档案中没有包包含/opt.将用户级可执行文件放在顶层/usr/bin是正确的。为什么要将可执行文件放在子目录中?无论如何,/usr/bin为可执行文件创建子目录将不起作用,因为该子目录不会位于路径中。

另一种方法是使用符号链接到/usr/bin文件系统中其他位置,通常为/usr/lib/etc/alternatives/usr/share。然而,我认为大多数时候正确的做法是/usr/bin直接放入这些可执行文件。

答案2

你有几种可能性:

  • /opt代表可选,您可以将它们放在特定文件夹中,但默认情况下它不会填充路径,然后在中创建符号链接/usr/bin可以允许您从/opt..deb如果您使用文件,这似乎不是一个有效的选项
  • 你也可以毫不在意地把它们放进去/usr/bin,不要把它们放在特定的文件夹中

相关内容