zoukankan      html  css  js  c++  java
  • 安装go版本

    下载地址(官网):
    https://golang.org/dl/

    下载地址(国内):
    https://dl.gocn.io/


    想编译GO,必须先有一个GO的编译器。

    创建GO的编译器:
    [root@node2 ~]# mkdir local
    [root@node2 ~]# cd local
    [root@node2 local]# curl -LO https://dl.google.com/go/go1.4.3.src.tar.gz
    [root@node2 local]# tar xvf go1.4.3.src.tar.gz
    [root@node2 local]# mv go go1.4.3
    [root@node2 local]# cd go1.4.3/
    [root@node2 go1.4.3]# cd src/
    [root@node2 src]# ./make.bash
    [root@node2 go1.4.3]# bin/go version
    go version go1.4.3 linux/amd64

    安装GO软件:
    [root@node2 local]# tar xf go1.10.3.src.tar.gz
    [root@node2 local]# ls
    go go1.10.3.src.tar.gz go1.4.3 go1.4.3.src.tar.gz

    [root@node2 local]# mv go go1.10

    [root@node2 go1.10]# cd src/

    [root@node2 src]# ./make.bash
    Building Go cmd/dist using /root/go1.4.
    ERROR: Cannot find /root/go1.4/bin/go.
    Set $GOROOT_BOOTSTRAP to a working Go tree >= Go 1.4.

    需要设置1.4版本的环境变量

    [root@node2 src]# export GOROOT_BOOTSTRAP=/root/local/go1.4.3
    [root@node2 src]# ./make.bash

    [root@node2 go1.10]# bin/go version
    go version go1.10.3 linux/amd64
    [root@node2 local]# mv go1.10 go

    初始化环境
    GOROOT 放置go的标准库和工具链
    $HOME/local/go (linux, mac)
    c:localgo (windows)

    GOPATH 放置第三方代码和自己的工程
    $HOME/go (linux, mac)
    c:go (windows)

    PATH
    export PATH=$GOROOT/bin:$GOPATH/bin:$PATH


    [root@node2 ~]# vim ~/.bashrc
    export GOROOT=/root/local/go
    export GOPATH=/root/go
    export PATH=$GOROOT/bin:$GOPATH/bin:$PATH

    测试一个Hello World
    [root@node2 go]# vim hello.go
    package main

    import "fmt"

    func main() {
      fmt.Println("hello golang")
    }

    [root@node2 go]# go run hello.go
    hello golang


    编译运行
    go build hello.go && ./hello # 编译成.exe的文件,在Windows中执行。直接编译成可执行文件。在Linux中也可以直接运行 ./hello
    go run hello.go #在linux中执行执行该文件

    [root@node2 go]# go build hello.go
    [root@node2 go]# file hello
    hello: ELF 64-bit LSB executable, x86-64, version 1 (SYSV), statically linked, not stripped
    [root@node2 go]# ./hello
    hello golang

    mac系统把程序编程成Linux系统的程序:
    [root@node2 go]# GOOS=linux go build hello.go 变成linux
    [root@node2 go]# GOOS=windows go build hello.go 变成windows
    [root@node2 go]# GOOS=darwin go build hello.go 变成mac

    [root@node2 go]# GOOS=linux go build -o hello.linux hello.go
    [root@node2 go]# GOOS=linux go build -o hello.lin hello.go
    [root@node2 go]# GOOS=windows go build -o hello.exe hello.go
    [root@node2 go]# GOOS=darwin go build -o hello.mac hello.go

  • 相关阅读:
    Bzoj 1010: [HNOI2008]玩具装箱toy(斜率优化)
    Cogs 376. [IOI2002]任务安排(后效性DP)
    Bzoj 1911: [Apio2010]特别行动队(斜率优化)
    Poj 2018 Best Cow Fences(分数规划+DP&&斜率优化)
    Bzoj 1212: [HNOI2004]L语言(AC自动机+DP)
    ZOJ 3228 Searching the String(AC自动机)
    Bzoj 3172: [Tjoi2013]单词(fail树)
    Hdu 3065 病毒侵袭持续中(AC自动机)
    Hdu 2896 病毒侵袭(AC自动机)
    Bzoj 2599: [IOI2011]Race(点分治)
  • 原文地址:https://www.cnblogs.com/green-frog-2019/p/11337452.html
Copyright © 2011-2022 走看看