我在Linux中安装OpenCV库。如果我运行命令:Linux MAKEFILE访问环境变量
echo $(pkg-config --libs opencv)
但是,如果我从生成文件运行这样的:
all:
@echo 1
@echo $(pkg-config --libs opencv)
@echo 2
我在Linux中安装OpenCV库。如果我运行命令:Linux MAKEFILE访问环境变量
echo $(pkg-config --libs opencv)
但是,如果我从生成文件运行这样的:
all:
@echo 1
@echo $(pkg-config --libs opencv)
@echo 2
你忘了在你的shell命令shell
:https://www.gnu.org/software/make/manual/html_node/Shell-Function.html
试试这个:
@echo $(shell pkg-config --libs opencv)
有了它,你打印一个名为pkg-config
变量(或类似的东西)的值。
make
不是shell,语法不同。你可能想拥有的Makefile回响在一个shell中运行pkg-config
,这样的结果:
all:
@echo 1
@echo $(shell pkg-config --libs opencv)
@echo 2
要做到这一点,最简单的和正确的方法是
all:
@echo $$(pkg-config --libs opencv)
使用shell
生成文件的功能是不必要的,实际上并不能纠正OP代码的错误。
请复制并粘贴终端命令并输出,而不是使用屏幕截图。 – Cornstalks