2
我想使用scons来编写我制作的小游戏的构建过程。 https://github.com/Dobiasd/DronVariantDir用于递归scons C++构建
我通常工作,包括通过源目录递归,但我想不污染src目录与.o文件。 VariantDir
应该帮助我,但以下SConstruct
不起作用(.o文件仍处于./src)
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
如果有人能告诉我我做错了什么,那将会很棒。 :)
太好了,谢谢。它(https://github.com/Dobiasd/Dron/blob/master/SConstruct)就像一个魅力。如果你想要,你可以发表你的评论作为答案,我会接受它。 :) –