makefile 指定檔案搜尋路徑和檔案生成路徑

2021-10-02 22:39:10 字數 866 閱讀 2546

在編寫makefile的時候,會遇到就是程式原始檔和makefile不是在同乙個目錄下的,如引用某乙個標頭檔案或者.c檔案,此時需要通過一些設定來引導make到指定的目錄下面對對應的標頭檔案進行搜尋。

一、makefile在搜尋指定檔案的時候有三種方式,具體如下:

1、在makefile的開頭通過對 vpath 變數來設定

通過vpath設定的路徑是 全域性有效 的,通過如下格式進行設定:

vpath = src:…/headers

上面的的定義指定兩個目錄,「src」和「…/headers」,make會按照這個順序進行搜尋。目錄由「冒號」分隔。

2、使用vpath變數設定對應的搜尋路徑,具體如下:

可以指定不同的檔案在不同的搜尋目錄中。這是乙個很靈活的功能。它的使用方法有三種:

1)vpath

為符合模式的檔案指定搜尋目錄。

2)vpath

清除符合模式的檔案的搜尋目錄。

3)vpath

清除所有已被設定好了的檔案搜尋目錄。

vapth 使用方法中的需要包含「%」字元。「%」的意思是匹配零或若干字元,

例如,「%.h」表示所有以「.h」結尾的檔案。指定了要搜尋的檔案集,而

則指定了的檔案集的搜尋的目錄

3、通過gcc命令中的 -i (大寫的i)選項來設定對應檔案路徑

如: gcc -c -i /src/main.c

二、makefile指定檔案生成位置:

在.c檔案編譯的時候,會生成中間檔案.o,此時可能需要指定對應.o檔案的生成位置,可以通過gcc的-o選項命令來指定,如:

gcc -c main.c -o ./dir/main.o

全盤搜尋指定的檔案 MFC

1.標頭檔案 include 此標頭檔案用來取自身的程式路徑,在此檔案中可以不要 include 這個是自己手動編寫的mfc裡可以用來控制台輸出的標頭檔案 include 多執行緒標頭檔案 using namespace std 2.標頭檔案的 如下 ifndef mycout define myc...

makefile 書寫規則三 檔案搜尋

在一些大的工程中,有大量的原始檔,我們通常的做法是把這許多的原始檔分類,並存放在不同的目錄中。所以,當make需要去找尋檔案的依賴關係時,你可以在檔案前加上路徑,但最好的方法是把乙個路徑告訴make,讓make在自動去找。makefile檔案中的特殊變數 vpath 就是完成這個功能的,如果沒有指明...

linux grep 指定檔案字尾名搜尋

在安裝的solr裡找一些單詞,使用grep 寫法如下 pwd opt solr solr hbase f trademark info index tbs conf grep hbase f trademark info index tbs 表示在當前目錄下所有檔案找單詞 hbase f trade...