2011-12-19 51 views
1

我有一個像aaa/bbb/ccc/xxx.html這樣的變量,我需要在makefile中創建路徑。所以我需要修改給定變量的文件位置,並使用mkdir -p aaa/bbb/ccc創建路徑。如何從makefile中的變量(aaa/bbb/ccc/xxx.html)獲取位置(aaa/bbb/ccc)?在Makefile中從文件的給定路徑獲取位置

+0

試試[$(dir names ...)](http://www.gnu.org/s/make/manual/html_node/File-Name-Functions.html)或'dirname'命令。 – 2011-12-19 10:33:23

+0

@Banthar:非常感謝。 'dirname'是爲我工作的。 – 2011-12-19 11:59:36

回答

1

GNU make的dir函數提取路徑的目錄部分:

mkdirp -p $(dir [email protected]) 

生成規則的目標的目錄,例如。比較notdirGNU make manual

+0

我不知道爲什麼''(dir $ @)'返回路徑,並在開頭加雙引號,如''aaa/bbb/ccc /' – 2011-12-19 11:25:43

+0

@onuR:可能是由$ @中的雙引號引起的。實際的Makefile,沒有辦法告訴。 – thiton 2011-12-19 11:27:36