Sudoは、いくつかの非常に良いセキュリティ上の理由から、すべてのENV変数を尊重するものではありません。
これを修正する最も簡単な方法は /bin /env
sudo /bin/env GOPATH=/home/myuser/go go get <stuff>
しかし、あなたはそれをする必要はありません、あなたは本当にGopathに書き込むためにルートを必要とするべきではありません、Gorootだけです。
質問
私はこれらに続いてgo(go-oci8)のためにOracleドライバーをインストールしようとしています 指示
私が直面している問題は、$ gopath環境変数です。コマンドを実行するとき:
sudo go get github.com/mattn/go-oci8
エラーが発生します:
cannot download, $GOPATH not set. For more details see: go help gopath
ただし、GoPathを適切に設定しています。私の環境は次のようになります:
env | grep GO
GOARCH=amd64
GOROOT=/usr/local/go
GOOS=linux
GOPATH=/home/myuser/go/
ls $GOPATH
bin pkg src
同様のことを見つけました 役職 しかし、ソリューションは私のケースには適用されません。
解決
Sudoは、いくつかの非常に良いセキュリティ上の理由から、すべてのENV変数を尊重するものではありません。
これを修正する最も簡単な方法は /bin /env
sudo /bin/env GOPATH=/home/myuser/go go get <stuff>
しかし、あなたはそれをする必要はありません、あなたは本当にGopathに書き込むためにルートを必要とするべきではありません、Gorootだけです。