Я пытаюсь скомпилировать проект, но SCons не может найти glm/glm.hpp... Это мой SConstruct:
VariantDir('build', '.')
env=Environment(CPPPATH=['.'], CPPDEFINES=[], LIBS=[], CXXFLAGS="-std=c++0x")
env.Program(target='exec_test', source=[Glob('build/*.cpp'), Glob('build/*.hpp')])
и это вывод:
scons: Reading SConscript files ...
scons: done reading SConscript files.
scons: Building targets ...
scons: building associated VariantDir targets: build
g++ -o build/game.o -c -std=c++0x -I. build/game.cpp
g++ -o build/main.o -c -std=c++0x -I. build/main.cpp
g++ -o exec_test build/game.o build/main.o build/game.hpp
build/game.hpp:15:23: fatal error: glm/glm.hpp: No such file or directory
#include <glm/glm.hpp>
^
compilation terminated.
scons: *** [exec_test] Error 1
scons: building terminated because of errors.
main.cpp , game.cpp и game.hpp находятся в текущем каталоге, а glm.hpp — в glm/glm.hpp (из текущего каталога)
Что я делаю неправильно?
Редактировать:
Я немного отредактировал и понял очень странную вещь: я получаю ошибку только в game.hpp! Я также попытался удалить строку включения glm, и я получил предупреждение о том, что некоторый код доступен только в С++ 11. Это означает, что ни один из аргументов построения scons не используется для game.hpp. Я также попытался включить glm в main.cpp и game.cpp, и он скомпилировался без ошибок или предупреждений. Думаю, дело не в файле game.hpp, а в том, что scons не собирает файлы .hpp с аргументами в SConstruct.