我原來的目錄結構:如何將一個可執行文件放在一個文件夾下?
include/ (const.h , map_reduce.h)
src/ (main.c , map_reduce.c)
Makefile
CFLAGS = -Wall -Werror
BINS = bin_mapreduce
all: $(BINS)
bin_mapreduce: bin/mapreduce
bin/mapreduce: mapreduce | bin
mapreduce:
gcc $(CFLAGS) src/main.c -o bin/[email protected]
bin:
mkdir [email protected]
clean:
rm -f bin/mapreduce
clean:
rm -f bin/mapreduce
我想創建一個bin文件夾,如果沒有一個。
然後,將main.c編譯成可執行的mapreduce文件並放入bin文件夾中。
然而,對於斌/ $ @,如果我加斌/ $ @之前,它顯示了一個錯誤:
/usr/bin/ld: cannot open output file bin/mapreduce: No such file or directory
collect2: error: ld returned 1 exit status
Makefile:19: recipe for target 'mapreduce' failed
make: *** [mapreduce] Error 1
如果做沒有斌/,只是:
gcc $(CFLAGS) src/main.c -o [email protected]
如果在bin文件夾外創建一個mapreduce文件,創建bin文件夾。
如何將mapreduce文件放入bin文件夾?
你可以將cd放入mapreduce目標中的bin /中,從而編譯bin /目錄中的源代碼 – Evert