我非常沮丧。我试图将系统配置目录的名称作为符号传递给源文件。对这个网站的一些研究让我明白我应该添加一行
AM_CPPFLAGS = -DSYSCONFIR='$(sysconfdir)'
到我的Makefile.am。我这样做了,并且定义确实出现在gcc的调用中;事实上,这是:
gcc -DHAVE_CONFIG_H -I. -I../../src -I.. -DSYSCONFIR='/usr/etc' -g -O2 -MT perm.o -MD -MP -MF .deps/perm.Tpo -c -o perm.o ../../src/perm.c
麻烦的是,gcc barfs无论如何,告诉我SYSCONFDIR是未宣布的。
我必须做错事,但为了圣古利克的爱,我不知道它是什么。我的autoconf是2.68,我的automake是1.11.3,我的gcc是4.6.3,我试图在Ubuntu 12.04下这样做。
干净的编译,干净的编译!我的王国干净整洁!
答案 0 :(得分:2)
你展示的内容看起来像拼写错误。
您正在设置并传递与SYSCONFIR
不同的SYSCONFDIR
。