Makefile文件:
$(shell ./test.sh)
Run Code Online (Sandbox Code Playgroud)
第一个实验:test.sh
echo "hi"
Run Code Online (Sandbox Code Playgroud)
我得到的错误:
Makefile:1: *** missing separator. Stop.
Run Code Online (Sandbox Code Playgroud)
第二个实验:test.sh
echo("hi")
Run Code Online (Sandbox Code Playgroud)
我得到的错误:
./test.sh: line 1: syntax error near unexpected token `"hi"'
./test.sh: line 1: `echo("hi")'
Run Code Online (Sandbox Code Playgroud)
没有任何意义......看起来'Make'试图将其语法强加于shell脚本,但shell脚本也需要它自己.
试试./test.sh.
在第一个实验中,结果是
hi
Run Code Online (Sandbox Code Playgroud)
当你运行时make,该行的$(shell ./test.sh)计算结果为hi,Make不知道如何解释.
在第二个实验中,
./test.sh: line 1: syntax error near unexpected token `"hi"'
./test.sh: line 1: `echo("hi")'
Run Code Online (Sandbox Code Playgroud)
您编写的shell脚本没有正确的shell语法,因此失败了.无论您是运行它还是Make运行它都会失败.
| 归档时间: |
|
| 查看次数: |
7156 次 |
| 最近记录: |