Go: x/tools/cmd/godoc: not work with symbolic links

Created on 10 Jan 2014  ·  3Comments  ·  Source: golang/go

by laf163:

What steps will reproduce the problem?
If possible, include a link to a program on play.golang.org.
1.ln -s ~/project/xxx $GOPATH/src/xxx
2.go install xxx
3.godoc -http=:6060

What is the expected output?
visit http://x.x.x.x:6060/pkg can find the package xxx.

What do you see instead?
not found.

Which compiler are you using (5g, 6g, 8g, gccgo)?
6g

Which operating system are you using?
centos6.4 amd64

Which version are you using?  (run 'go version')
$ go version
go version go1.2 linux/amd64

Please provide any additional information below.
rm $GOPATH/src/xxx and copy ~/project/xxx to $GOPATH/src, work properly.

Most helpful comment

This is important to me. I already have a place in my filesystem where I do checkouts of things I'm working on, and I'd like to do the following:
mkdir ${GOPATH}/src/myserver.tld
cd ${GOPATH}/src/myserver.tld
ln -s ${HOME}/my/usual/path/to/my/project .

I'd like to then see the documentation for the thing I'm working on in my godoc server.
I have a fix written for this, it's a small change to golang.org/x/tools/godoc/dirtrees.go

The above symlink already works for building! I can use this just fine as
import "myserver.tld/project"

Given that, it's incongruous that godoc doesn't _also_ work.

All 3 comments

Comment 1:

in general, cmd/go and godoc both can't handle symlinks well.
avoid using symlinks if you can.

_Labels changed: added repo-tools, release-none._

This is important to me. I already have a place in my filesystem where I do checkouts of things I'm working on, and I'd like to do the following:
mkdir ${GOPATH}/src/myserver.tld
cd ${GOPATH}/src/myserver.tld
ln -s ${HOME}/my/usual/path/to/my/project .

I'd like to then see the documentation for the thing I'm working on in my godoc server.
I have a fix written for this, it's a small change to golang.org/x/tools/godoc/dirtrees.go

The above symlink already works for building! I can use this just fine as
import "myserver.tld/project"

Given that, it's incongruous that godoc doesn't _also_ work.

If you use gvm linkthis, also have the issue.

Was this page helpful?
0 / 5 - 0 ratings