【问题标题】:command not found after go buildgo build 后找不到命令
【发布时间】:2017-02-10 12:16:01
【问题描述】:

我已经安装和设置好了。

export GOPATH=$HOME/go
export PATH=$PATH:/usr/local/go/bin

我在以下位置创建了package

$HOME/go/src/github.com/shamsher31/gosymbol

我在包文件夹中使用

go build

它在GOPATH 内的bin 文件夹中创建二进制文件
但是当我尝试从命令行运行包名时,会出现以下错误。

symbol: command not found

如何从命令行执行二进制文件?

【问题讨论】:

  • 您是否已将 $GOPATH/bin 添加到您的 PATH 中?
  • 并使用go install将二进制文件安装到GOPATH/bin中
  • 是的,我已经完成了你提到的两个步骤
  • 相关:What does go build build? go build 将可执行文件保留在当前工作目录中。
  • 这不是main 包。它不会构建二进制文件。

标签: go


【解决方案1】:

ubuntu 需要以下配置。

$ sudo gedit ~/.bashrc

添加以下配置

export PATH=$PATH:/usr/local/go/bin
export GOPATH=$HOME/go;
export PATH=$PATH:$GOPATH/bin;

/usr/local/go/bin 将是您的 go 安装路径和 $GOPATH/bin 将是您的自定义构建包的安装位置。

【讨论】:

  • 另外,一旦配置更改为source ~/.bashrc,请不要忘记重新加载配置
  • 谢谢,这对我有用。我使用zshrc,sudo nano ~/.zshrc
【解决方案2】:

我在 OSX 上遇到了类似的问题,我发现这是启动和运行 golang 的最简单方法:

使用 HomeBrew:

brew install go

然后将这些添加到您的.bash_profile

export PATH=$PATH:$GOPATH/bin
export GOPATH=$HOME/.go

【讨论】:

    【解决方案3】:

    对于Go最新版本go1.13.7及以上

    如果您已将 Go 安装在其默认位置,则无需设置 GOROOT 路径。

    Unixma​​cOS 的默认位置是 /usr/local/goWindows 的默认位置是 c:\Go

    您可以使用命令go env 验证路径。

    注意:如果遇到同样的错误“command not found”,则需要取消设置GOROOT

    如果你想在首选位置设置 Go,那么你需要像这样导出 GOROOT 路径:

    export GOROOT="/your/preferred/location"
    

    export PATH="$PATH:$GOROOT/bin"
    

    .bashrc.bash_profile 文件中。

    【讨论】:

      【解决方案4】:

      我在 mac 中遇到了同样的问题,但我使用的是 zsh

      我可以通过编辑文件 ~/.zsh 来解决问题

      export PATH=$PATH:/usr/local/go/bin
      export GOPATH=$HOME/go;
      export PATH=$PATH:$GOPATH/bin;
      

      【讨论】:

        【解决方案5】:

        Mac 版

        示例我将自定义 go 文件夹放在工作区目录中。您可以自行更改我的自定义 go 目录 workspace

        将以下脚本添加到 .bashrc

        export GOROOT="/usr/local/go"
        export GOPATH="$HOME/workspace/go"
        export PATH="$HOME/workspace/go/bin:$PATH"
        

        然后在你的终端上运行source .bashrc

        【讨论】:

          【解决方案6】:

          正如icza所说的

          go build 将可执行文件保留在当前工作目录中。

          也许有助于将 ./ 添加到您的运行命令中。

          go build
          ./symbol
          

          【讨论】:

            【解决方案7】:

            在 Windows 上:

            1. 设置$GOPATH env,例如,$HOME/go
            2. $GOPATH/bin 添加到$PATH

            它现在应该可以工作了。

            【讨论】:

            • 在 Windows 上将其 %GOPATH% 转换为 %PATH%
            • 如果你在 WIndows 上,很确定应该将 %GOPATH%\bin 添加到 %PATH%
            猜你喜欢
            • 2023-02-04
            • 2020-06-08
            • 1970-01-01
            • 2023-01-12
            • 1970-01-01
            • 2016-04-14
            • 1970-01-01
            • 2019-01-17
            • 1970-01-01
            相关资源
            最近更新 更多