我的印象是我可以在GNU makefile中调用bash函数,但似乎是错误的。这是一个简单的测试,我定义了此功能:
>type lsc
lsc is a function
lsc ()
{
ls --color=auto --color=tty
}
这是我的Makefile:
>cat Makefile
all:
lsc
这是我运行make的过程:
>make
lsc
make: lsc: Command not found
make: *** [all] Error 127
我的印象错了吗?还是有任何环境设置问题?我可以在命令行中运行“lsc”。
最佳答案
您不能调用Makefile中的bash函数或别名,只能调用二进制文件和脚本。但是,您可以做的是调用交互式bash并指示它调用您的函数或别名:
all:
bash -i -c lsc
例如,如果
lsc
是在.bashrc
中定义的。关于makefile - 无法在Makefile中调用bash函数,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/13109242/