Makefile for mingw-w64

static build

#CC:=/mingw32/bin/gcc

CC=i686-w64-mingw32-gcc

RC=i686-w64-mingw32-windres

mflag = -m32

# mflag = -mwin32


OUTDIR = out


TARG := tee1

SRCS = $(wildcard *.c)

OBJS = $(SRCS:%.c=$(OUTDIR)/%.o)

HEADERS =


LOCAL_CFLAGS = \

    --std=c99 \

    -Wall \

    -Wextra \

    -Wno-unused-parameter \

    $(mflag)   


LOCAL_LDFLAGS = \

-static \

    -static-libgcc \

    -luser32 -lkernel32 -lgdi32 -lcomctl32 -luxtheme -lole32 -loleaut32 -loleacc -luuid -lmsimg32 -lpthread \

    $(mflag)



.PONY: dirs clean test


all: dirs $(TARG)


dirs:

@mkdir -p $(OBJDIR) $(OUTDIR)


$(TARG): $(OBJS)

@echo linking $@

@$(CC) -o $@ $(OBJS) $(LDFLAGS) $(LOCAL_LDFLAGS)


$(OUTDIR)/%.o: %.c $(HEADERS)

@echo compile $<

@$(CC) -g -o $@ -c $< $(CFLAGS) $(LOCAL_CFLAGS)


clean:

rm -rf $(TARG) $(OUTDIR)

test:

gcc -v

@echo SRCS=$(SRCS)

@echo OBJS=$(OBJS)

@echo TARG=$(TARG)



Happy Coding~:)

mingw 32bit on msys2(64bit)

Windows에서 VisualStudio를 사용할 수 없는 경우에 다른 toolchain을 사용해야 하는 경우가 종종있다.

이런 상황에서 내가 선택한 toolchain은 MSYS2(64bit)에서 mingw(32bit)를 사용하는 것이다.

<<image:https://github.com/msys2>>


msys2 install

먼저 msys2(64bit)을 설치한다.

http://msys2.github.io/

http://repo.msys2.org/distrib/x86_64/msys2-x86_64-20160205.exe

mingw install

mingw 32bit toolchain을 설치한다. 

$ pacman -S mingw-w64-i686-toolchain

:: There are 16 members in group mingw-w64-i686-toolchain:

:: Repository mingw32

   1) mingw-w64-i686-binutils  2) mingw-w64-i686-crt-git  3) mingw-w64-i686-gcc

   4) mingw-w64-i686-gcc-ada  5) mingw-w64-i686-gcc-fortran

   6) mingw-w64-i686-gcc-libgfortran  7) mingw-w64-i686-gcc-libs

   8) mingw-w64-i686-gcc-objc  9) mingw-w64-i686-gdb

   10) mingw-w64-i686-headers-git  11) mingw-w64-i686-libmangle-git

   12) mingw-w64-i686-libwinpthread-git  13) mingw-w64-i686-make

   14) mingw-w64-i686-pkg-config  15) mingw-w64-i686-tools-git

   16) mingw-w64-i686-winpthreads-git


Enter a selection (default=all):



# References

http://www.davidegrayson.com/windev/msys2/

https://sourceforge.net/p/msys2/wiki/MSYS2%20introduction/


Happy Coding~:)

+ Recent posts