1
0

More than 1 year has passed since last update.

ubuntuでgo関連のパッケージをインストールした時のメモ

Posted at

やりたかったこと

こちらのパッケージをubuntuのサーバーに入れようとした

README.mdには、ソースからのインストールは下記のコマンドでやろうということだった

go get github.com/prasmussen/gdrive

そうかgoがいるのか、と思いapt-getでgoをインストールした後にgo getのコマンドを実行しようとしたらハマったのでメモ。

間違えた手順と発生したエラー

sudo apt-get golang
go get github.com/prasmussen/gdrive

でインストールしようとしたところ、go getのところでこんなエラーが

package context: unrecognized import path "context" (import path does not begin with hostname)

どうやらバージョン問題っぽい。apt-getで入れると古いのが理由のようで。よくある失敗パターンですね。

復旧+再インストール

apt-getで入ってしまったgoを消して、ソースからダウンロードしてインストール

sudo apt-get purge golang*
sudo rm -rf /usr/lib/go-1.6/ /usr/lib/go-1.6/src/ /usr/lib/go-1.6/src/runtime/ /usr/lib/go-1.6/src/runtime/race
wget https://go.dev/dl/go1.18.linux-amd64.tar.gz
sudo tar -C /usr/local -xzf go1.18.linux-amd64.tar.gz
mkdir -p ~/go; echo "export GOPATH=$HOME/go" >> ~/.bashrc
echo "export PATH=$PATH:$HOME/go/bin:/usr/local/go/bin" >> ~/.bashrc
source ~/.bashrc

さらに、最近のgoはgo getだと怒られるパターンがあるっぽく、go installでバージョンも指定して入れる必要があるぽい

$ go get github.com/prasmussen/gdrive
go: go.mod file not found in current directory or any parent directory.
	'go get' is no longer supported outside a module.
	To build and install a command, use 'go install' with a version,
	like 'go install example.com/cmd@latest'
	For more information, see https://golang.org/doc/go-get-install-deprecation
	or run 'go help get' or 'go help install'.

代わりに以下のコマンド

go install github.com/prasmussen/gdrive@latest
1
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0