我想从Makefile
.
当我通过 安装 ShellCheck 时cabal install
,它安装为~/.cabal/bin/shellcheck
. 所以,我已经相应地配置了 Bash:
$ cat ~/.bashrc
export PATH="$PATH:~/.cabal/bin"
$ source ~/.bashrc
$ shellcheck -V
ShellCheck - shell script analysis tool
version: 0.3.4
license: GNU Affero General Public License, version 3
website: http://www.shellcheck.net
这使我能够shellcheck
从 Bash 中的任何目录运行。但是,当我尝试从 Makefile 调用它时,make
找不到shellcheck
.
$ cat Makefile
shlint:
-shlint lib/
shellcheck:
-shellcheck lib/**
lint: shlint shellcheck
$ make shellcheck
shellcheck lib/**
/bin/sh: 1: shellcheck: not found
make: [shellcheck] Error 127 (ignored)
我认为 make 与PATH
我的普通 Bash shell 不同。我怎样才能解决这个问题?