Permissão negada ao executar o programa do make

Permissão negada ao executar o programa do make

Estou tentando depurar um problema, onde não consigo executar flutterdo make.

Este é o meu mínimo Makefileque reproduz o problema.

fails:
    flutter doctor

works:
    sh -c flutter doctor

E a saída correspondente:

➜ make fails
flutter --version
make: flutter: Permission denied
make: *** [Makefile:2: fails] Error 127
➜ make works
sh -c "flutter --version"
Flutter 2.2.2 • channel stable •
https://github.com/flutter/flutter.git
Framework • revision d79295af24 (7 days ago) • 2021-06-11 08:56:01
-0700
Engine • revision 91c9fc8fe0
Tools • Dart 2.13.3

Também observei que executar outros executáveis ​​no meu caminho, como python, goou o que quer que seja, funciona perfeitamente.

Estou me perguntando como depurar esse tipo de problema, ou seja, como faço para descobrir por que exatamente a permissão foi negada e como consertar isso.

EDITAR: Curiosamente, se eu executar which fluttere usar o caminho completo no arquivo Makefile, tudo funcionará bem:

also-works: 
    which flutter
    /full/path/to/bin/flutter --version

com a saída:

➜ make also-works
which flutter
/full/path/to/bin/flutter
/full/path/to/bin/flutter --version
Flutter 2.2.2 • channel stable •
https://github.com/flutter/flutter.git
Framework • revision d79295af24 (7 days ago) • 2021-06-11 08:56:01
-0700
Engine • revision 91c9fc8fe0
Tools • Dart 2.13.3

informação relacionada