烽火社区

标题: 【BPI-M2+】最新版golang安装详解 [打印本页]

作者: lingsi123456    时间: 2016-8-12 10:08 PM
标题: 【BPI-M2+】最新版golang安装详解
本帖最后由 LiuYang 于 2016-8-12 22:13 编辑

    golang能够用到的地方很多,arm linux上也可以运行,也不像什么java、.net之类的还要安装运行环境,本地原生代码执行效率很高。虽然BPI-M2+的Raspbian自带的源里面有golang的安装程序,可以很方便的安装,但是版本只到了1.3.3。即使最新的ubuntu也只提供了1.5的,所以要想追新还是要自己来编译安装。不过不要害怕,golang的编译很简单,提供了各种环境的编译脚本直接运行就能够编译出来。当然这里有个小技巧,也就是先编译1.4版本的,然后用1.4的go来编译1.6的源代码。请跟随我一步一步来做。

    首先到官网https://golang.org/dl/下载最新的源代码压缩包,目前最新的是1.6.3,所以这个需要下载。同时还要下载一个1.4.x的源代码压缩包,有了这个可以大大简化编译过程。
[attach]40715[/attach]
    打开页面默认是1.6.3,1.4版本的在下面。

[attach]40716[/attach]
    将1.4的源代码解压当前用户目录下,我用的是root,也就是放在root里,一定要放在这里,这样就不需要修改搜索路径了。

[attach]40717[/attach]
    解压后的目录名叫go,一定要修改为go1.4,同样也是为了不修改搜索路径。


[attach]40718[/attach]


    下面开始编译了。
[attach]40719[/attach]
    进入go1.4里的src目录,可以看到许多脚本。bat的是给windows用的,linux的就是bash了。而且分为all、make、run等许多文件。all是编译全部,并且在编译后运行测试工程。这个编译时间长,测试部分不是必须的,所以不用它。而make则是只编译,可以生成全部需要的东西,所以直接运行sh make.bash,其他所有的文件不用理会。

[attach]40720[/attach]
    H3的CPU效率比较低,等了一段时间才编译好。同样的操作在3288上不到5分钟就好了。
    编译完成之后,在go1.4的目录里会多出一个叫bin的目录,里面有个go可执行程序,下面需要的就是它。



[attach]40721[/attach]
    有了这个1.4的go后就可以开始编译1.6的了。
[attach]40722[/attach]
    同样下载1.6的源代码包,可以解压到任意目录下,比如我的是/usr/local。解压后的go目录不用改名。

[attach]40723[/attach]
    还是进入到1.6的src里,也是有一堆这样的bat、bash文件。和刚才一样,只运行sh make.bash就可以了。

[attach]40724[/attach]
    这次编译的时间将会比刚才长一些,因为1.6的功能增加了很多,需要编译的东西也就多了很多,等待即可。
    编译完成后,在go里也会多出bin目录,里面的go可执行文件就是最终的1.6版本的编译器了。


[attach]40725[/attach]
    到这里还不算完。
[attach]40726[/attach]
    进入用户目录,右键选择显示隐藏文件,用文本工具编辑.profile文件,添加golang所在的路径等信息,这样就不需要每次运行时手动输入路径了。

[attach]40727[/attach]     重启系统,登录后打开终端,使用go env可以查看当前的环境配置,go version可以看到版本。安装完成。


    最后说明一下,从go1.4到1.6的变化很大,最明显的区别是go1.4是用gcc来编译的,而从go1.4之后的版本,则是自己编译自己,编译器已经变为go了,所以在编译1.6的时候需要先编译1.4的,然后再来编译1.6的,多了一次编译过程。
(完)







欢迎光临 烽火社区 (http://bbs.cnecport.com/) Powered by Discuz! X3.2