告诉配置脚本使用相对路径

我使用GNU autoconf为我的一个程序生成一个配置脚本,现在我正在尝试为Windows进行交叉编译。

在Linux下,要改变我提供的数据文件的位置--datarootdir=/blah ,它工作正常。 然而,在Windows下,我的应用程序的路径在运行时才会知道(因为用户可以选择将它安装在任何地方)。因此,我想将数据目录设置为当前目录,无论应用程序在何处已启动。

不幸的是,传递--datarootdir=. 不起作用:

configure: error: expected an absolute directory name for --datarootdir: .

你如何告诉Autoconf / configure在运行时需要一个相对于当前目录的路径?


我想我已经找到了一个解决方案。 看起来--datarootdir用于控制文件的安装位置,因此它需要成为make install的绝对路径。 但是在编译过程中它可以被覆盖:

make datadir="."

这样,在编译过程中,代码认为$(datadir)是“。” 但是当运行make install ,文件仍然放在./configure --datarootdir=...指定的绝对路径中./configure --datarootdir=...


给它一个与当前工作目录相等的绝对路径:

./configure --datarootdir=$PWD
链接地址: http://www.djcxy.com/p/58227.html

上一篇: Tell a configure script to use a relative path for

下一篇: Can I/O latency cause a simple UPDATE to take seconds in MySQL?