Autoconf可以帮助生成configure
脚本,该脚本通常接受称为--prefix
的选项。通过这种方式,用户可以指定安装程序/数据的路径。
在我的程序中,我想引用数据文件的安装位置。在普通的Makefile中,它可以像
gcc -DPREFIX "/usr/share"
在源文件中,数据路径在
#define 数据路径前缀"/data"
使用 Autoconf,如何使用源代码中--prefix
指定的路径?是否有预定义的宏?
这个问题可以通过automake
来解决。定义类似AM_CFLAGS
AM_CFLAGS = -DPKGDATA=$(pkgdata)
如果--prefix
/usr/
,Automake 会将 $(pkgdata) 扩展到 /usr/share/<pkgname>/
。