這是一個建立於 的文章,其中的資訊可能已經有所發展或是發生改變。
1.錯誤描述
使用如下方式安裝beego的時候出錯
go get github.com/astaxie/beego
錯誤資訊:
go install unicode/utf8: open /opt/go/pkg/linux_amd64/unicode/utf8.a: permission denied
go install unicode: open /opt/go/pkg/linux_amd64/unicode.a: permission denied
go install math: open /opt/go/pkg/linux_amd64/math.a: permission denied
go install sort: open /opt/go/pkg/linux_amd64/sort.a: permission denied
go install hash: open /opt/go/pkg/linux_amd64/hash.a: permission denied
go install unicode/utf16: open /opt/go/pkg/linux_amd64/unicode/utf16.a: permission denied
go install crypto/subtle: open /opt/go/pkg/linux_amd64/crypto/subtle.a: permission denied
go install container/list: open /opt/go/pkg/linux_amd64/container/list.a: permission denied
go install internal/syscall: open /opt/go/pkg/linux_amd64/internal/syscall.a: permission denied
go install time: open /opt/go/pkg/linux_amd64/time.a: permission denied
然後我在命令前加了一個sudo,然後提示
go: cannot find GOROOT directory: /usr/local/go
2.解決辦法
go install unicode/utf8: open /opt/go/pkg/linux_amd64/unicode/utf8.a: permission denied
出現這樣的錯誤原因是,當初我是直接將golang的壓縮包拷到了/opt目錄下,所有的原始碼都未經編譯,應該先切換到/opt/go/src目錄下,執行sudo ./make.bash指令碼編譯,完成後在使用如下命令安裝beego就不會出錯了:
go get github.com/astaxie/beego
這樣的話,在執行如下命令安裝bee工具的時候會提示許可權不夠:
go get github.com/beego/bee
go install github.com/beego/bee: open /opt/go/bin/bee: permission denied
對此我的解決辦法是先切換到/opt目錄,執行如下命令,修改go檔案夾的許可權:
sudo chmod -R 777 go/
這樣就能正常安裝bee工具了。