我正在分发一个桌面应用程序,我不确定是否xxd
应该将其列为(构建)依赖项。
但我的第一个不是,因为它记录在Linux 联机帮助页因此应该可以在所有 Linux 机器上使用,不是吗? (如我错了请纠正我)
然而,我最近收到一些问题,称xxd
他们的系统(Steam Deck 和 Debian 上的 Arch)缺少 。
做了一些研究发现在一些发行版中xxd
二进制文件是仅有的作为依赖项与 vim 一起分发(请参阅这和这),这让我更加困惑,所以我现在依赖vim来安装?
我应该将其列为xxd
依赖项还是让用户自行安装二进制文件?
答案1
因为它记录在 Linux 手册页中,因此应该在所有 Linux 机器上可用,不是吗? (如我错了请纠正我)
你错了。拥有手册页与随处可用无关(实际上没有一个特定的程序可以在每一个Linux系统。有些嵌入式系统甚至没有有用户土地,其他人有例如Android用户土地。)
做了一些研究发现,在某些发行版中,xxd 二进制文件仅作为依赖项与 vim 一起分发(请参阅此和此),这让我更加困惑,所以我现在依赖 vim 来安装?
xxd
只是 vim 源代码的一部分 – 就是这样。ls
和rm
,例如部分coreutils
源代码。别出汗。包含可执行文件的包不一定像可执行文件一样被调用。
然而,在“现代”debian 上(至少回到 debian buster,所以,三个 debian 版本之前),xxd
是它自己的包。这不依赖于 vim。所以,我不确定你是否应该相信你的信息来源!
该实用程序是否应该
xxd
在我的应用程序中列为依赖项?
我们无法回答您的问题,因为您没有告诉我们您的应用程序(或其用户)需要什么xxd
。如果有必要的话建造你的应用程序,那么它是一个建立依赖关系。如果有必要的话跑步你的应用程序,它通常被称为依赖性。可能是其中之一、没有或两者兼而有之。