makefile中的$字符是个变量转义字符,例如放在变量前面,变量名最好用括号括起来。
GOPATH=123
test1:
echo $(GOPATH)
> make test1
echo 123
123
如果想要使用系统的环境变量的话就必须要使用双$,例如
test1:
go build $$GOPATH/src/*.go
注意 makefile 执行时默认调用的是 bashrc,所以需要将 GOPATH 在bashrc中引入,如果只在profile中export的话,makefile时 $$GOPATH 为空