2016-07-24 4 views
1

の1つの変数に追加するg ++を使用していますので、コンパイルするには.cppファイルを作成する必要があります。 問題は、見つかった他のファイル名を保持するためにファイル名を保持する変数を取得できないことです。 私は今のところ、この持っている:すべてのcppファイル名をバッチファイル

set objs= 
for /R %%f in (*.cpp) do set objs=!objs! %%f 
set cc=C:\MinGW\bin/g++.exe 
set include_paths=-IF:\SDL_Files\SDL2-2.0.4-mingw\i686-w64-mingw32\include\SDL2 -IF:\SDL_Files\SDL2_image-2.0.1\i686-w64-mingw32\include\SDL2 
set library_paths=-LF:\SDL_Files\SDL2-2.0.4-mingw\i686-w64-mingw32\lib -LF:\SDL_Files\SDL2_image-2.0.1\i686-w64-mingw32\lib 
set compiler_flags=-w -Wl,-subsystem,windows -fno-exceptions 
set linker_flags=-lmingw32 -lSDL2main -lSDL2 -lSDL2_image 
set obj_name=bullshit 
@echo on 
%cc% %objs% %include_paths% %library_paths% %compiler_flags% %linker_flags% -o %obj_name% 

pause 

Imはあまり欠落していないが、それは私をブロックしていますし、私は答えを見つけることができません...

答えて

0

試してみてください。

set objs= 
for /R %%f in (*.cpp) do call set objs=%%objs%% %%f 

コールなしforループはそれに追加するのではなく、単に%obj%を上書きします。

%% %% OBJSがパスをコールするとき%のように変換され%%として必要とされている

+0

パーフェクト、おかげで(%%はエスケープ%文字です) – Nico

関連する問題