gpt4 book ai didi

go - Makefile执行: permission denied

转载 作者:行者123 更新时间:2023-12-05 02:47:14 30 4
gpt4 key购买 nike

我在使用 golang 和 Makefile(在 Fedora 33 上)时遇到了一个很奇怪的问题。我的 Makefile 包含:

run:
go run main.go

它应该只向控制台打印“Hello”。当我运行 make run 时出现此错误:

go run main.go
make: go: Permission denied
make: *** [Makefile:5: run] Error 127

但是,如果我将 Makefile 更改为

  run:
/usr/bin/go run main.go

它工作得很好!

信息

输出:

$ which go
/usr/bin/go

$ go version
go version go1.15.5 linux/amd64

$ uname -a
Linux localhost.localdomain 5.9.10-200.fc33.x86_64 #1 SMP Mon Nov 23 18:12:50 UTC 2020 x86_64 x86_64 x86_64 GNU/Linux

有人可以帮我解决这个问题吗?如果您需要更多信息,请告诉我!

谢谢!

编辑

控制台

$ echo ${PATH}
/usr/lib64/ccache:/usr/local/bin:/usr/bin:/bin:/home/olena/bin:/usr/local/sbin:/usr/sbin:/var/lib/snapd/snap/bin

make 的输出

echo /usr/lib64/ccache:/usr/local/bin:/usr/bin:/bin:/home/olena/bin:/usr/local/sbin:/usr/sbin:/var/lib/snapd/snap/bin
/usr/lib64/ccache:/usr/local/bin:/usr/bin:/bin:/home/olena/bin:/usr/local/sbin:/usr/sbin:/var/lib/snapd/snap/bin
go run main.go
make: go: Permission denied
make: *** [Makefile:6: run] Error 127

/usr/bin

$ ll | grep go
lrwxrwxrwx. 1 root root 20 Nov 14 09:32 go -> /etc/alternatives/go

/etc/alternatives

$ ll | grep go
lrwxrwxrwx. 1 root root 22 Nov 29 15:16 go -> /usr/lib/golang/bin/go

最佳答案

我遇到了和你一样的问题,终于弄清楚我的问题是什么。也许这对您有用,尤其是当您将 zsh 与 omz 结合使用时。

在我的例子中,$PATH 中定义的位置之一包含一个名为 go 的文件夹。该位置在 go 二进制文件所在位置之前。一旦我将该位置放在二进制文件位置之后,一切正常。

我相信这可能与 omz 以及它的 shell 函数如何允许您进入文件夹有关。

关于go - Makefile执行: permission denied,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/65092584/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com