SConstruct を使用して「hello world」D プロジェクトをビルドしようとしており、次の出力が得られます。
D:\projects\test>scons
scons: Reading SConscript files ...
scons: done reading SConscript files.
scons: warning: No version of Visual Studio compiler found - C/C++ compilers most likely not set correctly
File "C:\Python27\Scripts\scons.py", line 192, in <module>
scons: Building targets ...
dmd -I. -c -ofsrc\main.o src\main.d
dmd -ofhello.exe src\main.o
Error: unrecognized file extension o
scons: *** [hello.exe] Error 1
scons: building terminated because of errors.
さらに、dmd コンパイラーが *.o ではなく *.obj 拡張子を持つオブジェクト ファイルを生成し、*.o ファイルを処理できないことを発見しました。
SCons が dmd オブジェクト ファイルのデフォルト出力を使用するようにしたり、*.obj ファイル拡張子を渡したりする方法はありますか? それともこれは単なるバグですか?
私の SConstruct ファイル:
import os
env = Environment(ENV=os.environ)
env.Object(target = 'hello', source = 'src/main.d')
私のプラットフォームは Windows 7 x86_64 です。
dmd バージョンは 2.064.2 です。