Build 用于递归SCONS C++构建的变量DIR
我想用scons来构建我写的一个小游戏 我通常通过源目录进行递归,但我不想用.o文件污染src目录。VariantDir应该可以帮助我,但是下面的SConstruct不起作用。o文件仍在。/srcBuild 用于递归SCONS C++构建的变量DIR,build,scons,Build,Scons,我想用scons来构建我写的一个小游戏 我通常通过源目录进行递归,但我不想用.o文件污染src目录。VariantDir应该可以帮助我,但是下面的SConstruct不起作用。o文件仍在。/src import fnmatch import os matches = [] for root, dirnames, filenames in os.walk('src/'): for filename in filenames: if fnmatch.fnmatch(file
import fnmatch
import os
matches = []
for root, dirnames, filenames in os.walk('src/'):
for filename in filenames:
if fnmatch.fnmatch(filename, '*.cpp'):
matches.append(str(os.path.join(root, filename)))
env = Environment()
env.Append(LIBS = ['sfml-audio', 'sfml-graphics','sfml-window','sfml-system'])
env.Append(LIBPATH = '/usr/local/lib')
env.Append(CXXFLAGS = '-std=c++11 -Wall -Wextra -pedantic -Werror')
env.VariantDir('build', 'src')
env.Program(target = 'Dron', source = matches)
我的期望是:
g++ -o obj/main.o -c -std=c++11 -Wall -Wextra -pedantic -Werror src/main.cpp
汇编现实:
g++ -o src/main.o -c -std=c++11 -Wall -Wextra -pedantic -Werror src/main.cpp
如果有人能告诉我我做错了什么,那就太好了 使用SCons VariantDir函数时,必须引用源文件,就像它们位于variant_目录中,而不是源目录中一样 是另一个问题的答案,这应该是一个很好的例子,应该会有所帮助。太好了,谢谢。它就像一个符咒。如果您愿意,您可以将您的评论作为答案发布,我将接受