【发布时间】:2013-07-18 11:09:33
【问题描述】:
我正在为我制作的工具制作一个 configure.ac 文件,我需要检查用户系统中是否安装了 pdflatex。我该怎么做 ?为了检查其他库,我只是使用 AC_COMPILE_IFELSE 包含了测试程序,但我不知道是否可以从程序中调用 pdflatex。
使用一些脚本自动安装所有必需的包也是常规做法,或者我可以在自述文件中指定需要哪些包,然后由用户自行安装这些包。
【问题讨论】:
我正在为我制作的工具制作一个 configure.ac 文件,我需要检查用户系统中是否安装了 pdflatex。我该怎么做 ?为了检查其他库,我只是使用 AC_COMPILE_IFELSE 包含了测试程序,但我不知道是否可以从程序中调用 pdflatex。
使用一些脚本自动安装所有必需的包也是常规做法,或者我可以在自述文件中指定需要哪些包,然后由用户自行安装这些包。
【问题讨论】:
您可以使用AC_CHECK_PROG([have_pdflatex], [pdflatex], [yes], [no]) 简单地检查它是否存在,如果存在则将have_pdflatex 设置为yes。如果程序存在,您更有可能希望使用AC_PATH_PROG([PDFLATEX], [pdflatex]) 来查找程序的实际路径并将其存储在PDFLATEX 中。
我认为最好让用户自己安装先决条件。你不知道他们如何安装他们的软件(apt?yum?pacman?emerge?source?),尝试涵盖所有情况是不值得的。只需在 README 中提及它们并使用 Autoconf 宏对其进行测试就足够了。
【讨论】: