如何向 debian 包添加多個依賴項?
下面是使用連結創建 debian 包時的工作控製文件。我保留了一個依賴項,它正在創建 deb 文件。
Package: my-program Version: 1.0 Architecture: all Essential: no Priority: optional Depends: default-jdk Maintainer: Your Name Description: A short desc
但是,如果我保留多個依賴項,則會出現錯誤。我保留的依賴項不是實際的,僅用於測試。
Package: my-program Version: 1.0 Architecture: all Essential: no Priority: optional Depends: default-jdk;net-tools Maintainer: Your Name Description: A short desc
dpkg-deb –build my-program_version_architecture/ dpkg-deb:錯誤:解析文件 ‘my-program_version_architecture//DEBIAN/control’ 靠近第 6 行包 ‘my-program’:‘Depends’ 欄位,無效的包名 ‘default-jdk ;net-tools’: 字元 ‘;’ 不允許(只有字母、數字和字元 ‘-+._’)
即使對於使用單一依賴項創建的 deb 文件,當我嘗試安裝時,對於我保存在 DEBIAN 文件夾中用於安裝的文件夾,我也會收到如下錯誤。
dpkg:錯誤處理存檔/home/azureuser/my-program_version_architecture.deb(–unpack):無法打開文件’/var/lib/dpkg/tmp.ci//testing’:是一個目錄
在語法上, the
;
不是正確的分隔符,而是,
. 因此,它被視為包名稱的一部分。從聲明包之間的關係,重點是我的:這些欄位都有統一的語法。它們是用逗號分隔的包名稱列表。
在聲明對其他包的依賴關係的包的
Depends
、Recommends
、Suggests
、Pre-Depends
、 和 控製欄位中Build-Depends
, 列出的包名稱還可能包括替代包名稱列表,由豎線(管道)符號分隔 。在這種情況下,任何一個替代包都可以滿足這部分依賴關係。Build-Depends-Indep``Build-Depends-Arch``|
他們還舉了例子:
Package: mutt Version: 1.3.17-1 Depends: libc6 (>= 2.2.1), default-mta | mail-transport-agent
看看控製文件的語法也很好。