私はgccの-D
コマンドラインフラグを使って引用符付きマクロを渡したいcソースファイルを持っています。 (How do I pass a quoted string with -D to gcc in cmd.exe?も参照してください)。私はcmd.exeで作業しています。gnu-makeは、cmd.exeで呼び出された場合、makefileのクォートをどのように扱いますか?
それは直接そのようなプログラムをコンパイルすることが可能です:
c:\MinGW\bin\gcc.exe -DDEFINED_STRING="\"foo bar baz\"" foo.c -o foo.exe
しかし、私は、次の内容
foo.exe: foo.c
c:\MinGW\bin\gcc.exe -DDEFINED_STRING="\"foo bar baz\"" foo.c -o foo.exe
でメイクを作成し、make
を実行する場合は、GNUのmakeがしようとします/bin/sh
を呼び出すとするパスのバックスラッシュが消えるgcc.exeする:
gcc-4.7.0/gcc/config/avr -c c:/temp/gcc-4.7.0/gcc/gcc.c -o o/gcc/gcc.o
/bin/sh: c:MinGWbing++.exe: command not found
make: *** [o/gcc/gcc.o] Error 127
十分Stragnly私は(つまり:引用符なし)-DDEFINED_STRING=foo
を使用する場合、これは起こりません。 Windows環境で作成
make -v
プリント