2012-01-31 162 views
1

我正在编写一套程序,我想在多台机器上部署并分发给其他开发人员进行测试。如何在配置文件中指定文件路径,以及如何在cron作业,命令行,示例API等中指定配置文件的位置?我们应该在配置文件中使用文件名的绝对路径还是相对路径?

我的意思是,我应该为我的应用程序使用ROOT_DIR并始终指定相对于此目录的文件路径?标准做法是什么?

我可以使用autoconf的配置脚本在应用程序配置文件中写入ROOT_DIR,还是应该统计配置文件以在机器中找到它的位置?谢谢。

回答

0

对于Autoconf,我相信您通常会使用--prefix选项将应用程序安装到非默认位置。缺省是系统范围的。

这里是一些Autoconf documentation

这样,用户可以决定他们是否想要系统范围内或用户特定的(或其他)。

您可能想要使用操作系统提供的软件包管理器。例如,在Debian上,您可能需要制作一个deb软件包 - 其他系统默认使用不同的软件包管理器。这将有助于解决您的应用程序的依赖关系。

E.g:如果你的应用需要foo库的版本X.Y,包管理器可以确保用户具有在安装包之前。

你也可以看看RPM Package Manager,这已经有一段时间了。

总之:没有人回答。在Linux操作系统(常见的比喻:

+0

我使用的autoconf --prefix选项,让人们安装他们喜欢的。但不知道我是否应该让autoconf的写程序配置文件中这个位置的绝对路径。目前分配应用程序tar.gz.会考虑把它做成一个包,谢谢。 – balajinix 2012-01-31 02:08:12

0
What is the standard practice? 

你可能要检查出Filesystem Hierarchy Standard澄清你应安装东西的想法听起来好像你可能想在/var/lib而不是HOME_DIR要安装的东西,但它的很难说没有更多的细节。

+0

感谢您的链接。对不起,我的意思是ROOT_DIR应用。编辑了这个问题。我希望人们在/ opt /或他们选择的目录中安装应用程序。 – balajinix 2012-01-31 02:23:52