2016-08-26 2 views
-1

나는 이상한 오류 메시지가 얻을 go run main.go 실행 : 18golang 미스 정적 라이브러리를 연결하는

GOLANG ENV

리눅스 민트 : 여기

[email protected] ~/godev/src/quick $ go run main.go 
command-line-arguments 
/usr/lib/go-1.6/pkg/tool/linux_amd64/link: cannot open file /usr/lib/go-1.6/pkg/linux_amd64/github.com/valyala/quicktemplate.a: open /usr/lib/go-1.6/pkg/linux_amd64/github.com/valyala/quicktemplate.a: no such file or directory` 

내 환경입니다

[email protected] ~/godev/src/quick $ go env 
GOARCH="amd64" 
GOBIN="/home/danilo/godev/bin" 
GOEXE="" 
GOHOSTARCH="amd64" 
GOHOSTOS="linux" 
GOOS="linux" 
GOPATH="/home/danilo/godev" 
GORACE="" 
GOROOT="/usr/lib/go-1.6" 
GOTOOLDIR="/usr/lib/go-1.6/pkg/tool/linux_amd64" 
GO15VENDOREXPERIMENT="1" 
CC="gcc" 
GOGCCFLAGS="-fPIC -m64 -pthread -fmessage-length=0" 
CXX="g++" 
CGO_ENABLED="1" 

My $ GOPATH 트리 :

.(godev) 
├── bin 
│   └── qtc 
├── pkg 
│   └── linux_amd64 
│    └── github.com 
│     └── valyala 
│      ├── bytebufferpool.a 
│      └── quicktemplate.a 
└── src 
    ├── github.com 
    │   └── valyala 
    │    ├── bytebufferpool 
    │    │   ├── ... 
    │    └── quicktemplate 
    │     ├── ... 
    └── quick 
     ├── main.go 
     └── templates 
      ├── hello.qtpl 
      └── hello.qtpl.go 

정적 라이브러리가 저장된 작업 공간의 pkg 폴더가 누락 된 것 같습니다! 맞습니까? 사전에

감사합니다,

다닐

+0

이 보인다 :

package main import ( "fmt" "./templates" ) func main() { fmt.Printf("%s\n", templates.Hello("Foo")) fmt.Printf("%s\n", templates.Hello("Bar")) } 

그래서 난 가져 오기 섹션에서 절대 경로를 사용하는 놓친 github.com/valyala/quicktemplate.a : open /usr/lib/go-1.6/pkg/linux_amd64/github.com/valyala/quicktemplate.a "? –

답변

0

미안 해요, 내가 해결했다. main.go 코드했다 : "/usr/lib/go-1.6/pkg/linux_amd64/을 열려고하는 것처럼

package main 

import (
    "fmt" 

    "quick/templates" 
) 

func main() { 
    fmt.Printf("%s\n", templates.Hello("Foo")) 
    fmt.Printf("%s\n", templates.Hello("Bar")) 
} 
관련 문제