makefile中shell注意
阿新 • • 發佈:2018-12-02
1、在Makfile中shell變數需要使用$$來引用,而$(A)是Makefile的變數
test:
for i in 1 2 3 4 5 ; \
do\
echo $$i ; \ #使用 $(i) 的話輸出不正確
done
2、makefile只能在target中呼叫shell,其他地方呼叫不出錯但是不會被執行
VAR="hello"
$(echo $(VAR))
rul:
gcc - o main.exe mian.c
上面makefile執行不會列印VAR變數的值,因為echo不在target rul裡面
3、shell在makefile中執行時, 每一行shell都由一個單獨程序執行
SUBDIR=src example
all:
@for subdir in $(SUBDIR); \
do \
echo "building "; \
done
4、makfeil中賦值符號"="兩邊允許空格,但是shell指令碼的不允許有空格;
5、參考:
https://blog.csdn.net/groundhappy/article/details/52798234