在这种情况下,我将c与autoconf一起使用,但该问题在其他地方也适用.
我有一个运行时需要的Glade xml文件,我必须告诉应用程序它在哪里.我正在使用autoconf在代码中定义一个变量,该变量指向“指定的前缀目录” / app-name / glade.但这只有在安装了应用程序后才开始起作用.如果要在此之前运行程序怎么办?是否存在确定应检查应用程序数据的路径的标准方法?
谢谢
感谢您的答复.为了澄清,我不需要知道应用程序数据的安装位置(例如,通过在/ usr,usr / local等中搜索),configure脚本可以做到这一点.问题更多是在于确定该应用程序是否已安装.我想我只会先检查安装位置,如果没有,那么再检查“ ./src/foo.glade”.
解决方法:
我不认为如何找到此类数据的标准方法.
我本人会以某种方式进行操作,即拥有一个路径列表,并确定是否可以从任何路径中找到文件,并且该列表应包含从autoconf和CURRENTDIRECTORY POSSIBLE_PREFIX定义的DATADIR APPNAME,其中前缀可能从您的构建根目录开始.
但是无论如何,请不要忘记使用autoconf中的那些定义作为数据文件,这些定义使您的软件更易于打包(例如deb / rpm)