#Golang# user: LookupId not implemented on linux/386 golang

在测试一个程序的时候,遇到如下报错

user: LookupId not implemented on linux/386 golang

服务器环境

2.6.32-279.el6.x86_64

操作系统版本

CentOS 5.8

go 的环境

GOARCH="386"
GOBIN="/home/apps/go/bin"
GOCHAR="8"
GOEXE=""
GOHOSTARCH="amd64"
GOHOSTOS="linux"
GOOS="linux"
GOPATH="/home/apps/go-project/GO"
GORACE=""
GOROOT="/home/apps/go"
GOTOOLDIR="/home/apps/go/pkg/tool/linux_amd64"
TERM="dumb"
CC="gcc"
GOGCCFLAGS="-g -O2 -fPIC -m32"
CXX="g++"
CGO_ENABLED="0"

go 的版本

go version go1.2.1 linux/amd64

代码如下:

package main
import (
    "encoding/json"
    "fmt"
    "log"
    "os/user"
)

func main(){
    u, err := user.LookupId("500")
    if err != nil {
        log.Fatal(err)
    }

    data, err := json.MarshalIndent(u, "", "")
    if err != nil {
        log.Fatal(err)
    }
    fmt.Printf("%s\n", data)
}

提问,在我现有的环境下,我要如何解决这个问题,这个报错,是说 linux/386 没有 Lookupid 的实现,使用什么命令编译会不出现这个问题?

注:在 go 的用户组也看到类似问题,但是没有看的很明白 连接为 Cross compilation and os/user (cgo problem)

查看回复