我正在尝试在32位Linux上使用LiteIDE(Go IDE)。除自动完成功能外,其他所有功能均有效。构建,运行,一切正常。 gocode二进制文件似乎正在运行:

ithisa@miyasa ~> ps aux | grep gocode
ithisa   10003  0.0  0.0 823788  2624 pts/1    Sl+  09:06   0:00 /home/ithisa/scratch/liteide/bin/gocode -s -sock unix -addr localhost:37373

我可能做错了什么?

最佳答案

您可能需要设置GOROOT =。要在LiteIDE中进行设置,请寻找环境工具栏;它应该是一个下拉菜单,可能已预先选择了“系统”和一个按钮。单击按钮以显示“编辑环境” Pane ,然后双击“system.env”,或从下拉列表中选择任何环境。

更改以GOROOT=开头的行,使其指向您的“go”目录。如果是从golang.org安装的,则普通的旧$ HOME/go是一个常见设置,如果您不知道它在哪里,运行go env将显示Go工具链本身正在使用的GOROOT。当然,如果该行被注释掉了(#GOROOT= ...),请删除#。救。

如果工具栏完全丢失,则 View ->环境工具栏取消隐藏。

也可能值得在.bashrc中设置GOROOT和相关设置,因此从命令行启动的工具可以看到它。我在主目录中安装了Go和LiteIDE,我的工作区是~/gocode,所以我的就像:

export PATH="$HOME/go/bin:$HOME/liteide/bin:$PATH"
export GOROOT=$HOME/go
export GOPATH=$HOME/gocode

我无法确定这实际上是您的问题,但是如果我取消设置GOROOT,则症状会与您所看到的相符:完成对我的代码有效,但不适用于标准库。祝你好运!

10-06 13:16