对 makefile中 order-only 前提条件的理解
生活随笔
收集整理的這篇文章主要介紹了
对 makefile中 order-only 前提条件的理解
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
“order-only”依賴的使用舉例:
LIBS = libtest.a
foo : foo.c | $(LIBS)
$(CC) $(CFLAGS) $< -o $@ $(LIBS)
make在執行這個規則時,如果目標文件“foo”已經存在。當“foo.c”被修改以后,目標“foo”將會被重建,但是當“libtest.a”被修改以后。將不執行規則的命令來重建目標“foo”。
還是自己做一個小例子會比較爽:
LIBS=lib.a foo: foo.c | $(LIBS) touch foo @echo "gao" 在 foo.c 文件 和 lib.a 文件都存在的情況下。
執行 make 的結果是:
顯示?
touch goo
gao
而 此時修改 lib.a 文件,再執行 make:
foo is up to date
本文轉自健哥的數據花園博客園博客,原文鏈接:http://www.cnblogs.com/gaojian/archive/2012/09/18/2690899.html,如需轉載請自行聯系原作者
LIBS = libtest.a
foo : foo.c | $(LIBS)
$(CC) $(CFLAGS) $< -o $@ $(LIBS)
make在執行這個規則時,如果目標文件“foo”已經存在。當“foo.c”被修改以后,目標“foo”將會被重建,但是當“libtest.a”被修改以后。將不執行規則的命令來重建目標“foo”。
還是自己做一個小例子會比較爽:
LIBS=lib.a foo: foo.c | $(LIBS) touch foo @echo "gao" 在 foo.c 文件 和 lib.a 文件都存在的情況下。
執行 make 的結果是:
顯示?
touch goo
gao
而 此時修改 lib.a 文件,再執行 make:
foo is up to date
本文轉自健哥的數據花園博客園博客,原文鏈接:http://www.cnblogs.com/gaojian/archive/2012/09/18/2690899.html,如需轉載請自行聯系原作者
總結
以上是生活随笔為你收集整理的对 makefile中 order-only 前提条件的理解的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: QQ 相册后台存储架构重构与跨 IDC
- 下一篇: 面向对象PHP之静态延迟绑定