web-dev-qa-db-ja.com

go install:GOPATH以外のディレクトリのインストール場所はありません

わかりました、この質問はたくさん出てきましたが、解決策はありません。この問題を解決するために何度も試しましたが、何もしませんでした。これが私がやったことです:

  • Goをインストールしました。

次に、パス要件を。bash_profileに追加しました。

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

次に、正しいフォルダーをセットアップします。

Folders

ご覧のとおり、tireという名前のプロジェクションも作成しました。

main.goの内容は単純です:

package main

import "fmt"

func main() {
  fmt.Println("Hello, world!")
}

物事を正しく動作させるために必要なのはこれだけだと思いますが、私が何をしても、go install

go install: no install location for directory /Users/Daryl/go/src/tire outside GOPATH

私はただ実行できることを知っていますgo install tire、しかしそれは問題ではない。私はむしろ何が起こっているのか知りたいです。

実行するとgo env

GOARCH="AMD64"
GOBIN=""
GOCHAR="6"
GOEXE=""
GOHOSTARCH="AMD64"
GOHOSTOS="darwin"
GOOS="darwin"
GOPATH="/Users/daryl/go"
GORACE=""
GOROOT="/usr/local/go"
GOTOOLDIR="/usr/local/go/pkg/tool/darwin_AMD64"
TERM="dumb"
CC="clang"
GOGCCFLAGS="-g -O2 -fPIC -m64 -pthread -fno-caret-diagnostics -Qunused-arguments -fno-common"
CXX="clang++"
CGO_ENABLED="1"

これはあなたにとって馴染みのあるものですか?私は何か見落としてますか?助けていただければ幸いです。

23
daryl

問題はJames Henstridge commented であり、何らかの理由でユーザーディレクトリ名の大文字と小文字の問題がありました。ディレクトリが小文字であっても、大文字にする必要がありました。

これはうまくいきました:

GOPATH=/Users/Daryl/go

これはしませんでした:

GOPATH=$HOME/go

しかし、iMacからrMBPに移行して以来、Goをセットアップするのに何の問題もなかったので、今日まで何が起こっているのかわかりませんが、その場合は大文字で修正しました。

1
daryl

go installを実行すると、Goは$GOBIN env変数パスを探します。 $GOBIN$GOPATH/binに設定する必要があります

$ export GOBIN=$GOPATH/bin

および/またはOS検索パスに$GOBINを追加します

$ export PATH=$PATH:$GOBIN

エラーを取得せずにコマンドを使用するには。

61
Pie 'Oh' Pah