φ(.. ) 備忘録
amazonアソシエイト

2014年3月21日金曜日

Cygwinでプログラミングする。『Makefile編』

プログラミングする前に、Makefileのテクニックを忘れないように書いておこう。私の会社ではソースのファイル名やオブジェクト名を直接Makefileに書く手法をとっている。この手法では作成者の意図どおりにmakeすることが可能な反面、ソースのファイル名や作成後のバイナリ名を変更したいときや、新しく開発する際に、Makefileの作成・編集が必要になってしまう。
私はこれが面倒なのでメンテフリーのMakefileを作成し流用している。
その内容は、以下。
# Makefile
CC       = /usr/bin/gcc
WINDRES  = /usr/bin/windres
CFLAGS   = -O2 -mwindows
LDLIBS   = -lpthread
.SUFFIXES: .c .o .exe
.SUFFIXES: .rc .res
SRC = $(wildcard *.c)
RES = $(wildcard *.rc)
OBJS = $(SRC:%.c=%.o) $(RES:%.rc=%.o)
TARGET = $(shell basename ${PWD}).exe
all: ${SRC} ${RES} ${OBJS} $(TARGET)
.c.o:
$(CC) ${CFLAGS} -c $< -o $@
.rc.o:
$(WINDRES) -i $< $@
${TARGET}: ${OBJS}
$(CC) ${CFLAGS} ${OBJS} $(LDLIBS) -o ${TARGET}
clean:
rm -f *.o ${TARGET} *~ *.core core
上記内容をソースフォルダ配下のMakefileにコピペしてmakeとうつだけでフォルダ名のバイナリが作成できる。複数のフォルダを作成しソース管理している場合には使えないかもしれないが、簡易開発ならこのMakefileで十分だと思う。。。。

GNU Make 第3版
GNU Make 第3版
posted with amazlet at 14.03.21
Robert Mecklenburg
オライリージャパン
売り上げランキング: 99,058

Cygwinでプログラミングする。『環境準備編』

Cygwinの環境が整ったのでプログラミングをしてみる。仕事でC言語を使ったツール開発をする必要があったのでついでにノウハウをまとめておこう。
まずは、Cygwinのsetup-x86.exeを起動し、以下をインストール。
  • gcc
  • g++
  • make
  • w32api-headers
  • w32api-runtime
  • mingw-gcc一式
次にソース管理ツールを同じくCygwinのsetup-x86.exeでインストール。私はrcsを愛用。
これでひとまずプログラミング環境は作成完了。簡単でしょw

ふつうのLinuxプログラミング Linuxの仕組みから学べるgccプログラミングの王道
青木 峰郎
ソフトバンククリエイティブ
売り上げランキング: 18,648