Scons "Dir" 命令不起作用?
Scons "Dir" command doesn't work?
我有一个名为 "myc" 的子目录,其中包含 2 个“.c”文件:
$ ls myc
1.c f.c
我当前的目录有一个 SConstruct:
$ cat SConstruct
myc=Dir('myc')
print myc
Program('test2',myc)
运行 scons,它打印出一堆错误:
$ scons
scons: Reading SConscript files ...
myc
scons: done reading SConscript files.
scons: Building targets ...
gcc -o test2 myc
/usr/bin/ld: cannot find myc: File format not recognized
collect2: error: ld returned 1 exit status
scons: *** [test2] Error 1
scons: building terminated because of errors.
奇怪的是:我预计 "print myc" 会列出“1.c”和 "f.c",令我失望的是它打印的是 "myc",而不是变量值,并且编译也失败了。
如何更正?
不确定为什么您认为将目录指定为目录的源会起作用?
文档中是否有某些内容让您相信这应该有效?
如有请指出,以便改进
如果你这样做了:
gcc -o blah some_dir_name
这样不行吗?
这应该可以满足您的要求。
myc=Glob('myc/*.c')
print myc
Program('test2',myc)
我有一个名为 "myc" 的子目录,其中包含 2 个“.c”文件:
$ ls myc
1.c f.c
我当前的目录有一个 SConstruct:
$ cat SConstruct
myc=Dir('myc')
print myc
Program('test2',myc)
运行 scons,它打印出一堆错误:
$ scons
scons: Reading SConscript files ...
myc
scons: done reading SConscript files.
scons: Building targets ...
gcc -o test2 myc
/usr/bin/ld: cannot find myc: File format not recognized
collect2: error: ld returned 1 exit status
scons: *** [test2] Error 1
scons: building terminated because of errors.
奇怪的是:我预计 "print myc" 会列出“1.c”和 "f.c",令我失望的是它打印的是 "myc",而不是变量值,并且编译也失败了。
如何更正?
不确定为什么您认为将目录指定为目录的源会起作用?
文档中是否有某些内容让您相信这应该有效?
如有请指出,以便改进
如果你这样做了:
gcc -o blah some_dir_name
这样不行吗?
这应该可以满足您的要求。
myc=Glob('myc/*.c')
print myc
Program('test2',myc)