私のC++プロジェクトのディレクトリ構造は
/..
makefile <- the makefile is in root
/include <- subdirectory that has to be included while compiling
/obj <- target place for all *.o and final executable
/src <- sources
そして、私の現在のmakefileは次のとおりです。
CC=g++
CFLAGS=-c -Wall -std=c++11
INC=-Iinclude
SRC=src
TGT=obj
all: myapp
myapp: myapp.o
$(CC) $(TGT)/myapp.o -o $(TGT)/myapp
myapp.o:
$(CC) $(CFLAGS) $(INC) $(SRC)/myapp.cpp -o $(TGT)/myapp.o
clean:
rm -rf $(TGT)
mkdir $(TGT)
これは私の最初のファイルで機能しました。私は完全なmakefile初心者です-ディレクトリの下のすべてのファイルをコンパイルし、/src
ディレクトリ内の実行可能ファイルにリンクするのを手伝ってください/obj
。
makefileはWindowsで動作する必要があります。私はMinGWとMSYSを使用しています。