我需要創建一個Makefile,它應該有一個run
規則。但是,運行需要一些參數。Makefile中的規則參數
有沒有人有任何想法如何在Makefile中運行規則時傳遞參數?我想通過輸入make run foo bar
來運行帶參數的run
規則。
我想這一點,但沒有奏效:
run:
make compile
./scripts/runTrips $1 $2 $PLACES $OUT $VERS
我想提供的參數是第一和第二。
我需要創建一個Makefile,它應該有一個run
規則。但是,運行需要一些參數。Makefile中的規則參數
有沒有人有任何想法如何在Makefile中運行規則時傳遞參數?我想通過輸入make run foo bar
來運行帶參數的run
規則。
我想這一點,但沒有奏效:
run:
make compile
./scripts/runTrips $1 $2 $PLACES $OUT $VERS
我想提供的參數是第一和第二。
將參數傳遞給make命令時,像引用其他內部make變量一樣引用它們。
如果你的Makefile看起來像:
run:
script $(param1) $(param2)
您可以用下面的語法調用它:
$> make run param1=20 param2=30
,並應調用腳本,如:
script 20 30
使自己不提供像腳本一樣的傳遞參數。 make通常以下列方式使用:配置項目比運行簡單的'make'。配置可以通過運行shell腳本'configure'完成。這個腳本是你可以傳遞參數的腳本。例如:
./configure param1 param2
make run
配置腳本必須解析參數並將它們寫出到config.mk。 config.mk必須包含以下內容:
PARAM1 = val1
PARAM2 = val2
Makefile中必須包括config.mk:
TOP = .
include $(TOP)/config.mk
run:
make compile
./scripts/runTrips $(PARAM1) $(PARAM2) $(PLACES) $(OUT) $(VERS)
在您的「配置」腳本,你也可以檢查的正確性參數並進行其他的檢查和計算。
它的實際工作,但我可以把它當我寫運行: $>使運行(而不是參數1 = ....) –
amit
2011-01-24 14:38:09