在Linux(Mint)中安装Go并修改bashrc

用户485498

我想在Linux Mint机器上安装Google的Go语言。我是Linux的新手,所以要遵循我已阅读的一些说明并不容易。即,有人告诉我编辑/修改bashrc文件:

 export GOROOT=$HOME/gosource
 export GOARCH=amd64
 export GOOS=linux
 export GOBIN=$HOME/bin
 export PATH=$PATH:$GOBIN

我不知道该怎么做。我打过gedit ~/.bashrc

进入终端,出现空白页。我输入代码并保存。然后做了

hg clone -u https://go.googlecode.com/hg/ go

获取源代码。这样对吗?因为然后我尝试编译代码,并且出现了一长串错误(我没有,但很不幸,我现在正在使用其他PC)。

但是,如果有人可以帮助我安装Go,我将不胜感激。

解:

除了以下答案中提到和解决的各种问题外,我还忘记安装以下内容

sudo apt-get install bison ed gawk gcc libc6-dev make

在golang.com安装页面的顶部提到了哪个。

彼得·索

除其他事项外,你试图克隆存储库~/go和编辑~/.bashrc,以点$GOROOT~/gosource

仔细阅读《入门指南》复制和粘贴命令,或者非常仔细地检查您键入的内容;在按下Enter键之前,请仔细检查输入内容。对于命令,该$符号表示命令提示符,请勿键入。记住,Linux是大小写敏感的,之间的区别/\是很重要的。仔细检查命令输出;输出有意义吗?运行诊断命令喜欢envpwdwhich,和uname当您在Stack Overflow答案中看到滚动条时,请滚动浏览所有代码和输出。

首先,设置~/.bashrc

$ gedit ~/.bashrc

export GOROOT=$HOME/go
export GOARCH=amd64
export GOOS=linux
export GOBIN=$GOROOT/bin
export PATH=$PATH:$GOBIN

关闭所有打开的终端窗口,然后打开一个新的终端窗口以检查新~./bashrc值和其他值。

$ env | grep '^\(GO\|HOME=\|PATH=\)'
GOBIN=/home/peter/go/bin
PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/home/peter/go/bin
GOARCH=amd64
HOME=/home/peter
GOROOT=/home/peter/go
GOOS=linux
$ cd $GOROOT/src
$ pwd
/home/peter/go/src
$ uname -a
Linux peter 2.6.32-31-generic #61-Ubuntu SMP Fri Apr 8 18:25:51 UTC 2011 x86_64 GNU/Linux

然后将存储库克隆到$GOROOT,您将克隆到同一位置并从同一位置进行编译。

$ hg clone -u release https://go.googlecode.com/hg/ $GOROOT
requesting all changes
adding changesets
adding manifests
adding file changes
added 8441 changesets with 31916 changes to 4421 files (+1 heads)
updating to branch release-branch.r57
2702 files updated, 0 files merged, 0 files removed, 0 files unresolved
$ cd $GOROOT/src
$ ./all.bash
< SNIP OUTPUT >
ALL TESTS PASSED
---
Installed Go for linux/amd64 in /home/peter/go.
Installed commands in /home/peter/go/bin.
The compiler is 6g.
$ which 6g
/home/peter/go/bin/6g

您尚未发布您的输出,所以我只能猜测您的问题是什么。

例如,您说“目录为Go”,应为“ go”;由于Linux区分大小写,因此“ Go”和“ go”是不同的。

如果$GOROOThg clone命令中省略目标位置或未$GOROOT设置目标位置,hg clone则默认为hg目录。例如,

$ env | grep '^GOROOT'
GOROOT=
$ hg clone -u release https://go.googlecode.com/hg/ $GOROOT
destination directory: hg

既然有了GOARCH=amd64,您应该在x86_64处理器上运行64位版本的Linux Mint 您的uname -a输出说什么?您希望6gand6l程序在x86_64处理器上编译和链接,该处理器应该在您的$GOBIN目录中,该处理器应该在您的目录中$PATH

$ env | grep '^\(GOBIN\|PATH=\)'
GOBIN=/home/peter/go/bin
PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/home/peter/go/bin
$ which 6g
/home/peter/go/bin/6g

通过阅读./all.bash命令输出的结尾,您还应该已经看到了这一点

ALL TESTS PASSED
---
Installed Go for linux/amd64 in /home/peter/go.
Installed commands in /home/peter/go/bin.
The compiler is 6g.

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章