我很難嘗試創建一個根目錄下的makefile,然後將其放入另一個名爲「code」的目錄中,這就是我的代碼將被編譯的地方。也可執行則需要被放置在一個新的目錄,就會創建一個叫「斌」,這將是在根目錄下我有這個至今:改變目錄然後編譯代碼的Makefile
all: bin/main
test: bin/main
bin/main: main.cpp
mkdir -p bin
g++ -std=c++11 -Wall -Werror -ansi -pedantic -o bin/program main.cpp
注:我需要這兩個目標都與測試。但是,如果我的代碼已經在根本作(以上)才起作用
UPDATE:重命名的代碼目錄爲src,這裏是新的makefile
all:
mkdir -p ./bin
g++ -std=c++11 -Wall -Werror -ansi -pedantic ./src/main.cpp -o./bin/prgm
測試: 的mkdir -p ./bin g ++ -std = C++ 11 -Wall -Werror -ansi -pedantic ./src/main.cpp -o ./bin/prgm
但是現在我得到這個錯誤「make:*** makefile:is a目錄。停止。「 我試圖正確運行它嗎?我這樣做「$ make」
我在這裏沒有看到實際的問題。你對你的應用程序的需求感到困惑。這不是任何人都可以回答的。只有你知道你的應用程序源代碼的佈局。一旦你弄清楚你的源代碼是什麼樣子的,以及需要什麼樣的實際命令來編譯,那麼編寫Makefile的任務就開始了。 –
將main.cpp更改爲code/main.cpp? – immibis
通常的做法是生成文件在父目錄中工作,並且.cpp文件包含父目錄的相對路徑。 –