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'中的原因。 –