首页  >  文章  >  后端开发  >  为什么通过 Makefile 运行 Go 程序时出现“权限被拒绝”错误?

为什么通过 Makefile 运行 Go 程序时出现“权限被拒绝”错误?

Mary-Kate Olsen
Mary-Kate Olsen原创
2024-10-24 03:27:02474浏览

Why Am I Getting

权限被拒绝:调查“go run”和 Makefile 调用之间的差异

通过 Makefile 运行 Go 程序时遇到权限被拒绝错误可能会令人困惑。此问题源于 GNU make 或其 gnulib 组件中的错误。根本原因在于系统的 PATH 中存在一个名为“go”的目录,该目录位于实际 Go 可执行文件所在的目录之前。

要确定这是否是根本原因,请检查系统的 PATH 并检查对于包含名为“go”的子目录的任何目录。例如,如果 /usr/bin/go/ 存在并且 /usr/bin 是您的 PATH 的一部分,您可能会遇到此问题。

要纠正这种情况,请确保所有包含“go”子目录的目录都是从你的路径中删除。如果这不可行,您也可以使用 shell 调用来执行 GNU make。添加 ; Makefile 目标的字符就足够了:

run:
        go run . ;

以上是为什么通过 Makefile 运行 Go 程序时出现“权限被拒绝”错误?的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn