Bug ID | 980048 |
---|---|
Summary | devel:languages:go/go: Bug |
Classification | openSUSE |
Product | openSUSE.org |
Version | unspecified |
Hardware | x86-64 |
OS | openSUSE 42.1 |
Status | NEW |
Severity | Normal |
Priority | P5 - None |
Component | 3rd party software |
Assignee | graham@andtech.eu |
Reporter | xiedimai@163.com |
QA Contact | opensuse-communityscreening@forge.provo.novell.com |
Found By | --- |
Blocker | --- |
There is a bug in go standard library. Create a new file named main.go, and put following code in it: package main import "fmt" func main() { fmt.Println("Hello world!") } Save it and run "go vet main.go", then it will return following result: vet: import failed: reading export data: /usr/lib64/go/pkg/linux_amd64/fmt.a: go archive is missing __.PKGDEF vet: import failed: reading export data: /usr/lib64/go/pkg/linux_amd64/fmt.a: go archive is missing __.PKGDEF exit status 1 Run "head -2 /usr/lib64/go/pkg/linux_amd64/fmt.a", and it will return: !<arch> __.PKGDEF/ 0 399 399 100644 3208 ` You can find that there is a extra char "/" after the word "__.PKGDEF" in the second line. It causes go can't import library. There is a correct library in my computer which it's first two lines should be as follow. $ head -2 $GOPATH/pkg/linux_amd64/golang.org/x/tools/imports.a !<arch> __.PKGDEF 0 0 0 644 838 `