>  기사  >  백엔드 개발  >  Go 언어에서 흔히 저지르는 실수

Go 언어에서 흔히 저지르는 실수

尚
앞으로
2020-06-17 17:34:294477검색

Go 언어에서 흔히 저지르는 실수

이 글은 Mac 기준으로 go1.14 버전 설치 후 기본 go 파일 실행 시 오류가 발생했습니다.

오류 현상:

다음 go 파일을 실행하고 다음 오류를 보고합니다.

# hello.go
package main

import "fmt"

func main(){
    fmt.Println("hello world")
}

실행 효과는 다음과 같습니다.

➜  test go run hello.go
# runtime/internal/atomic
/usr/local/go/src/runtime/internal/atomic/atomic_amd64x.go:13:6: Load redeclared in this block
    previous declaration at /usr/local/go/src/runtime/internal/atomic/atomic_amd64.go:16:24
/usr/local/go/src/runtime/internal/atomic/atomic_amd64x.go:19:6: Loadp redeclared in this block
    previous declaration at /usr/local/go/src/runtime/internal/atomic/atomic_amd64.go:22:32
/usr/local/go/src/runtime/internal/atomic/atomic_amd64x.go:25:6: Load64 redeclared in this block
    previous declaration at /usr/local/go/src/runtime/internal/atomic/atomic_amd64.go:28:26
/usr/local/go/src/runtime/internal/atomic/atomic_amd64x.go:31:6: LoadAcq redeclared in this block
    previous declaration at /usr/local/go/src/runtime/internal/atomic/atomic_amd64.go:34:27
/usr/local/go/src/runtime/internal/atomic/atomic_amd64x.go:36:6: Xadd redeclared in this block
    previous declaration at /usr/local/go/src/runtime/internal/atomic/atomic_amd64.go:39:37
/usr/local/go/src/runtime/internal/atomic/atomic_amd64x.go:39:6: Xadd64 redeclared in this block
    previous declaration at /usr/local/go/src/runtime/internal/atomic/atomic_amd64.go:42:39
/usr/local/go/src/runtime/internal/atomic/atomic_amd64x.go:42:6: Xadduintptr redeclared in this block
    previous declaration at /usr/local/go/src/runtime/internal/atomic/atomic_amd64.go:45:47
/usr/local/go/src/runtime/internal/atomic/atomic_amd64x.go:45:6: Xchg redeclared in this block
    previous declaration at /usr/local/go/src/runtime/internal/atomic/atomic_amd64.go:48:36
/usr/local/go/src/runtime/internal/atomic/atomic_amd64x.go:48:6: Xchg64 redeclared in this block
    previous declaration at /usr/local/go/src/runtime/internal/atomic/atomic_amd64.go:51:38
/usr/local/go/src/runtime/internal/atomic/atomic_amd64x.go:51:6: Xchguintptr redeclared in this block
    previous declaration at /usr/local/go/src/runtime/internal/atomic/atomic_amd64.go:54:45
/usr/local/go/src/runtime/internal/atomic/atomic_amd64x.go:51:6: too many errors

원인:

새 버전 설치 시 이전 버전이 삭제되지 않았기 때문에 버전에서 일부 설치 패키지가 손상되었습니다.

해결책:

먼저 이전에 설치한 패키지를 수동으로 삭제한 다음 지침을 다시 따르세요

rm -rf /usr/local/go
sudo tar -C /usr/local -xzf go1.14.1.darwin-amd64.tar.gz

더 많은 관련 지식을 보려면 go 언어 튜토리얼을 참고하세요 칼럼

위 내용은 Go 언어에서 흔히 저지르는 실수의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
이 기사는 segmentfault.com에서 복제됩니다. 침해가 있는 경우 admin@php.cn으로 문의하시기 바랍니다. 삭제