似乎CPPPATH不起作用
env = Environment()
target = 'app'
sources = ['app.d']
libs = ['phobos2', 'pthread', 'm', 'rt']
includes = ['/home/supertool/devel/d/vibe.d/source/vibe']
env.Program(target = target,
source = sources,
LIBS = libs,
CPPPATH = includes);
当我运行scons时,它会生成编译命令:
dmd -I. -c -ofapp.o app.d
includes
未添加到-I
部分
那么如何配置呢?有INCLUDEPATH吗?
答案 0 :(得分:4)
您可以尝试手动构建路径,而不是使用CPPPATH
构造变量(SC {在-I
之前),如下所示:
includePaths = ['-Ipath1', '-Ipath2']
....
env.Program(target = target,
source = sources,
LIBS = libs,
CCFLAGS = includePaths);
但这可能导致同样的问题,CCFLAGS
不会用于D
编译。除了DSUFFIXES
编辑:似乎未记录DFLAGS
和DPATH
我在我的计算机上玩这个,看到CCFLAGS
不适用于D
,但是DFLAGS
和DPATH
这样做了,他们不是记录:( DPATH
将在编译时加上"I"
,因此它类似于CPPPATH
SCons用户邮件列表中有关于加强SCons D支持的讨论。