C言語ファイルをNMAKEする為の最小Makefile
タイトルはちょっと盛った。
C言語のHello WorldのファイルをVisual Studioのコンパイラでmakeする
#include "stdio.h" void main(void) { printf("Hello World\n"); }
参考にしたサイト
makefile と nmake ~ makefile を読み解く - C/C++ による Windows プログラミング入門講座 - C/C++ 入門
TARGETNAME=test_make OUTDIR=obj CC=cl.exe LINK=link.exe ALL: $(OUTDIR)\$(TARGETNAME).exe $(OUTDIR) : @if not exist $(OUTDIR) mkdir $(OUTDIR) CPPFLAGS=\ /nologo\ /W3\ /Fo"$(OUTDIR)\\"\ /Fd"$(OUTDIR)\\"\ /c\ /Zi\ /D_WIN32_WINNT=0x0600\ /DUNICODE\ /D_UNICODE LINK32_FLAGS=\ /nologo\ /subsystem:console\ /pdb:"$(OUTDIR)\$(TARGETNAME).pdb"\ /out:"$(OUTDIR)\$(TARGETNAME).exe"\ /DEBUG LINK32_OBJS=\ $(OUTDIR)\$(TARGETNAME).obj $(OUTDIR)\$(TARGETNAME).exe : $(OUTDIR) $(LINK32_OBJS) (LINK) $(LINK32_FLAGS) $(LINK32_OBJS) .c{$(OUTDIR)}.obj: $(CC) $(CPPFLAGS) $< clean: -@erase /Q $(OUTDIR)\*
上記のファイルで obj
フォルダ下に test_make.exe というファイルが作成される。
nmake
を実行する場合は以下のバッチをたたく
@echo off call "C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Auxiliary\Build\vcvars64.bat"