我知道,这个问题已经被问过几次了,但它似乎还没有涉及我的情况。
我正在尝试打包一个 Mono 应用程序以从 运行/opt
。
首先,我尝试了这些指南:
- https://wiki.ubuntu.com/PackagingGuide/Mono
- http://developer.ubuntu.com/2012/02/how-to-prepare-a-compiled-application-for-ubuntu-software-center/
但他们似乎没能完成任务。
我发现的问题是,它dh_make
似乎不喜欢构建安装在 中的包/opt
。它总是将自己的前缀应用于路径 ( /usr/
),并将文件放在通常的目录中 ( bin/share/lib
)。但我想要的是平面布局,就像我直接使用 MonoDevelop 构建时通常拥有的那样。
我该怎么做dh_make
?我是否必须手动创建 debian/rules 文件才能强制安装/opt
?
答案1
生成的打包dh_make
应该仅被视为一个起点。除了最直接的情况外,您还需要编辑一些文件。为了安装到/opt
,您需要设置安装前缀。假设您使用的是自动工具构建系统,您的debian/rules
文件可能如下所示:
#!/usr/bin/make -f
%:
dh $@ --with cli
override_dh_auto_configure:
dh_auto_configure -- --prefix=/opt/my_program