2016-08-12 141 views
0

我在Linux中安裝OpenCV庫。如果我運行命令:Linux MAKEFILE訪問環境變量

echo $(pkg-config --libs opencv) 

結果如下: enter image description here

但是,如果我從生成文件運行這樣的:

all: 
    @echo 1 
    @echo $(pkg-config --libs opencv) 
    @echo 2 

沒有什麼是打印出來,發生了什麼? enter image description here

+1

請複製並粘貼終端命令並輸出,而不是使用屏幕截圖。 – Cornstalks

回答

1

make不是shell,語法不同。你可能想擁有的Makefile迴響在一個shell中運行pkg-config,這樣的結果:

all: 
    @echo 1 
    @echo $(shell pkg-config --libs opencv) 
    @echo 2 
0

要做到這一點,最簡單的和正確的方法是

all: 
    @echo $$(pkg-config --libs opencv) 

使用shell生成文件的功能是不必要的,實際上並不能糾正OP代碼的錯誤。