0
我想构建一个Debian/Ubuntu软件包,它安装了一个应用程序./configure
'd --prefix
。如何防止`debuild`将'etc`文件夹移出已配置的`--prefix`文件夹?
当我运行./configure --prefix=/opt/d-ph/my_app && make && sudo make install
,然后我结束了以下文件夹结构:
/opt/d-ph/my_app
|- bin/(my binaries)
|- etc/(my configuration)
|- include/
|- lib/
|- share/
但是,当我用下面的debian/rules
覆盖运行debuild
:
override_dh_auto_configure:
dh_auto_configure -- --prefix=/opt/d-ph/my_app
然后我结束了与以下封装结构:
|- /DEBIAN
|- /etc/(my configuration)
|- /opt/d-ph/my_app
|- bin/(my binaries)
|- include/
|- lib/
|- share/
|- /share/
我不希望我的软件包安装它的配置(即/etc
根目录下的/etc
文件夹)。即我希望配置位于--prefix
选项指定的目录中。即我想生成以下包结构:
|- /DEBIAN
|- /opt/d-ph/my_app
|- bin/(my binaries)
|- etc/(my configuration)
|- include/
|- lib/
|- share/
|- /share/
如何防止debuild
从移动etc
文件夹出配置--prefix
文件夹中,准备包目录结构是什么时候?
这样做会违反FHS和其他适用标准的重要部分。打破这个目标你希望达到什么目的? – tripleee
也许最后一种侵入性的解决方法是将'/ etc'中的符号链接放在'/ opt/d-ph/my_app/etc'中的文件和目录中。 – tripleee
我想为应用程序的最新稳定版本(不是我的)构建一个deb包。发行版的回购(Ubuntu 14.04)中的应用程序太旧了(并且没有PPA)。我决定,我不想在'/ usr'前缀下安装应用程序,因为我不想维护任何二进制不兼容性。相反,我想构建一个类似便携式的.deb版本的应用程序供我自己使用。这个.deb不应该触及全系统的任何东西。这就是为什么我不想将配置存储在根目录'/ etc'中的原因。 –