ivaneeo's blog

          自由的力量,自由的生活。

            BlogJava :: 首頁 :: 聯系 :: 聚合  :: 管理
            669 Posts :: 0 Stories :: 64 Comments :: 0 Trackbacks
          下面解釋make是如何工作的:當遇到目標體clean時,make先查看其是否有依賴體,因為clean沒有依賴體,所以make認為目標體是最新的而不執行任何操作.為了編譯這個目標體,必須輸入make clean.

          然而,如果恰巧有一個名為clean的文件存在,make就會發現它.然后和前面一樣,因為clean沒有依賴體文件,make就認為這個文件是最新的而不會執行相關命令.為了處理這類情況,需要使用特殊的make目標體.PHONY. .PHONY的依賴體文件的含義和通常一樣,但是make不檢查是否存在有文件名和依賴體中的一個名字相匹配的文件,而是直接執行與之相關的命令.在使用了.PHONY之后,前面的例子如下:
          howdy: howdy.o helper.o helper.h
              gcc howdy.o helper.o -o howdy
          helper.o: helper.c helper.h
              gcc -c helper.c
          howdy.o: howdy.c
              gcc -c howdy.c
          hello: hello.c
              gcc hello.c -o hello
          all: howdy hello
          .PHONY : clean
          clean:
              rm howdy hello *.o
          posted on 2005-08-04 21:52 ivaneeo 閱讀(339) 評論(0)  編輯  收藏 所屬分類: GNU牛力
          主站蜘蛛池模板: 大庆市| 威信县| 洛扎县| 祁阳县| 岑巩县| 湘阴县| 吉林市| 灵寿县| 凤庆县| 罗田县| 江油市| 福海县| 章丘市| 淮南市| 获嘉县| 荥经县| 莎车县| 石景山区| 桐乡市| 新郑市| 仙桃市| 安化县| 达日县| 新营市| 广东省| 荣成市| 太仓市| 拉孜县| 阿尔山市| 武邑县| 广南县| 淮安市| 云南省| 张家川| 陆川县| 阿荣旗| 罗江县| 德格县| 太保市| 滦南县| 萝北县|