2008年02月07日

ロードモジュール(exe)を作成するMakefile

Makefileの書き方って、結構忘れがちですよね。
というわけで、メモ。

Linuxでロードモジュール(exe)を作成するMakefileのサンプルです(C++用)。


#
# Makefile for
CC = g++
SRCDIR = ./
OBJDIR = ./
INCD00 = ./
PROGRAM = SocketSample
DEST = ./
CP = /bin/mv
LIBS = -L./ -lSample
CFLAGS = -Wall -O
INCD = -I. -I$(INCD00)

vpath %.h $(INCD00)

vpath %.cpp $(INCD00)
#
SRCS=\
main.cpp \

OBJS=\
main.o \
#
all: $(OBJS) $(PROGRAM)
#
.cpp.o:
$(CC) $(CFLAGS) -c $(INCD) $<
#
$(PROGRAM): $(OBJS)
@echo "Loading $(PROGRAM) ..."
@$(CC) $(CFLAGS) -o $@ $(OBJS) $(LIBS)
@echo "done"
#
install: $(PROGRAM)
@echo Installing $(PROGRAM) in $(DEST)
@$(CP) $(PROGRAM) $(DEST)
#
clear clean:; @rm -f $(OBJS)




一応、以前に作成例を出したlibSample.soをリンクするよう
にしています。ただし、上記の指定の仕方だと環境変数LD_LIBRARY_PATHにライブラリファイルの位置を実行時に
指定しておく必要があります。


良かったらクリックお願いします→banner_01.gif


posted by 台北猫々 at 20:50| Comment(0) | TrackBack(0) | 技術メモ(Linux C/C++)