我用这个目录结构创建了一个学习项目:
top_srcdir
/ \
src build
/ \
src1 src2
目录src包含带有以下内容的文件main.c:
#include "src1/foo.h"
#include "src2/bar.h"
int main()
{
foo();
bar();
return 0;
}
src / src1 / foo.c包含:
#include "src1/foo.h"
//some code
src / src2 / bar.c包含:
#include "src2/bar.h"
//some code
Makefile.am包含:
bin_PROGRAMS = sample
sample_SOURCES = src/main.c src/src1/foo.c src/src2/bar.c
当我将woring目录更改为build
并执行../configure && make
时,make
步骤失败,
../ src / src1 / foo.c致命错误:src1 / foo.h:没有这样的文件或目录。
我应该为变量AM_CPPFLAGS
提供什么值,以便不会发生此错误?
答案 0 :(得分:2)
您真的不需要设置AM_CPPFLAGS:
bin_PROGRAMS = sample
sample_SOURCES = src/main.c src/src1/foo.c src/src2/bar.c
sample_CPPFLAGS = -I src
应该工作。