GO语言之环境搭建和基本命令

Posted passion

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了GO语言之环境搭建和基本命令相关的知识,希望对你有一定的参考价值。


go语言基础

下载go编译器

参考教程:https://www.cnblogs.com/Dominic-Ji/articles/11660121.html
下载地址:https://golang.google.cn/dl/

windos系统安装go,直接使用这个msi应用程序傻瓜式安装,一直下一步就好。

go目录简介

  • /bin:包含可执行文件,如:编译器,Go 工具
  • /doc:包含文档模版
  • /lib:包含示例程序,代码工具,本地文档等
  • /misc:包含与支持 Go 编辑器有关的配置文件以及 cgo 的示例
  • /os_arch:包含标准库的包的对象文件 (.a)
  • /src:包含源代码构建脚本和标准库的包的完整源代码(Go 是一门开源语言)
  • /src/cmd:包含 Go 和 C 的编译器和命令行脚本

gopath简介

gopath相当于是go语言的工作区。

GOPATH 默认采用和 $GOROOT 一样的值,但从 Go 1.1 版本开始,你必须修改为其它路径。它可以包含多个 Go 语言源码文件、包文件和可执行文件的路径,而这些路径下又必须分别包含三个规定的目录:srcpkgbin,这三个目录分别用于存放源码文件、包文件和可执行文件。

https://www.bilibili.com/video/BV1gf4y1r79E/?spm_id_from=333.337.search-card.all.click

环境变量配置

GOPATH

所有你写的源代码都应该放在%GOPATH%/src目录下。
这个gopath你是可以自己定义的
比如我就在d盘创建一个目录go_path。
文件夹下再创三个目录:binpkgsrc

配置 GOPATH:

在环境变量中指定你刚刚创建的文件夹位置

PATH

接下来配置path,需要在path中添加的路径有两个。

第一个是你下载的go程序(GOROOT)下的bin目录。(bin目录下有go编译器)
第二个是你创建的GOPATH路径。

配置完之后在命令可以执行go version查看是否成功:

go语言项目结构

对于个人开发者:

对于企业开发:

IDE下载与配置

安装goland

goland官网:https://www.jetbrains.com.cn/go/download/other.html
下载goland2021.3.5:

有弹窗就选择do not import。
又是熟悉的界面,验证激活码:

获取激活码:
https://www.mano100.cn/thread-1942-1-1.html
http://web.52shizhan.cn/ide?k=goland

goland里添加goroot和gopath

settings:

goroot:

gopath:

编写第一个GO程序

使用goland创建一个go项目(选择我们配置好的GOPATH路径):

新建一个go文件:

在文件内复制以下代码:

package main

import "fmt"

func main()
    fmt.Println("Hello world!")   // 注意这个Println是大写开头

编译go文件

在项目路径下编译

使用命令行界面,在你的项目路径输入go build:

项目路径下多了一个exe文件:

这是个二进制的可执行文件,可以直接在命令行执行:

在其他路径编译

需要在go build命令后面添加路径。
比如当前我的项目路径如下:

我只需要输入以下代码即可编译:

为什么呢?因为我的项目路径在GOPATH的src目录内。
而GOPATH已经被配置到了环境变量内。

查看go是如何查找项目目录的:

编译产生的文件会出现在你的当前目录(这里的例子会出现在E盘):

pycharm配置编译后输出可执行文件的位置:

go相关命令

修改编译后文件的名字:
使用-o参数:go build -o new_name.exe

go run:执行go文件。(使用的比较少,推荐使用go build编译后再执行)

go install:相当于先执行go build,再把go build产生的exe文件拷贝到GOPATH的bin目录。

由于我们在环境变量配置了GOPATH,现在任何目录下都可以执行你install的exe文件。

跨平台编译

go语言支持跨平台编译。

假设当前我们开发代码是在windows下开发的,但是我们代码最终是要运行在linx服务器下。我们代码编译出的.exe文件是不能在liunx服务器上运行的。(go build产生的可执行文件是基于当前操作系统的可执行文件。)

交叉编译的概念:比如在windows上编译出一个可以在linux上能运行的二进制文件。
需要指定目标操作系统的平台和处理器架构即可:

步骤:
1.禁用CGO
2.设置目标平台
3.设置处理器(64或32)
示例:

再使用go build就可以编译出能在linux系统上运行的文件了。

以上是关于GO语言之环境搭建和基本命令的主要内容,如果未能解决你的问题,请参考以下文章

Go语言之路—博客目录

go语言(golang)学习之路

Go从入门到放弃

我的全栈之路-Go语言基础之Go语言开发环境搭建

Go----Go 语言快速体验之开发环境搭建及第一个项目HelloWorld

Golang系列之开发环境搭建