Golang语言在近年来因为其高性能、编译速度快、开发成本低等特点逐渐得到大家的青睐,它是Google开发的一种静态强类型、编译型、并发型,并具有垃圾回收功能的编程语言。本文主要给大家介绍如何在openKylin上安装部署Golang。


01

Golang 特点

在开始讲解如何配置前,我们先来了解下Go语言的特点。

  • Go语言语法简洁,语言风格接近C语言,并进行了大幅的简化,去掉了不需要的表达式括号,循环也只有for一种表示方法,就可以实现数值、键值等各种遍历。与C++相比,Go不包括如枚举、异常处理、继承、虚函数等功能,但增加了切片型、并发、管道、垃圾回收、接口等特性的语言级支持。

  • Go提供了语言层面的并发支持,其通过简单go关键字就可以开启一个协程,协程是非常轻量级的,初始仅占用4KB,远比系统级线程轻量,因此,可以在一个Go程序内轻松开启成千上万个的协程。

  • Go提倡“不要通过共享内存来通信,要通过通信来共享内存”,因此Go中提出来通道Channel的概念,其可以无锁的实现协程间的通讯。同时Go也提供了互斥锁、读写锁、条件变量、原子操作等多种多协程工作时共享内存的方案。

  • 代码风格统一,Go提供了格式化工具—gofmt,在编辑器保存时会使用该工具进行代码的格式化,保证了不同开发者提交的代码都是统一的格式。

  • 在性能上,Golang是编译型的语言,它直接将可读的代码编译成了处理器可以直接运行的二进制文件,执行效率更高,性能更好

  • 在编译上,Golang可进行交叉编译,使在Windows平台编译Linux可运行程序成为可能。

  • Go继承了C的庞大遗产,可以直接调用C库,并能直接在代码中编写C和汇编代码。同时,Go在1.18版本中加入了范型,为编程提供了更方便的抽象。

02

Golang环境配置

下载安装包

打开网址:https://golang.google.cn/dl/

找到Linux系统的安装包(最新版本即可),在终端输入命令“uname-a”查看本地系统架构,下载该架构的安装包到本地。如图所示包括了x86和ARM64等架构。


安装

首先通过终端命令进入安装包所在路径,然后执行如下命令(root或sudo)即可:

rm -rf /usr/local/go && tar -C /usr/local -xzfgo1.18.2.*.tar.gz

其中*为系统架构,如下图是x86架构的命令:


设置环境变量

安装成功后还需配置2个环境变量“GOROOT”和“PATH”。“GOROOT”为Go语言的当前安装目录;“PATH”为使用的命令和可执行文件。

配置环境变量时首先在终端输入命令:

vim /etc/profile

然后将添加以下内容至文件末尾并保存,如图所示:


最后使用以下命令使配置生效,这样就可以在任意目录使用Go命令了。

source /etc/profile

查看是否安装成功

以上三个步骤均执行成功后,输入以下命令:

go version

查看go是否安装成功,如图所示极为安装成功,安装的go版本为1.18:


安装成功的同时,执行“go env”会显示环境的详细配置。

下面着重介绍两个配置,GO111MODULE是在使用Go或者更改Go导入包的方式的时候设置,有三个值分别是off、on、auto。off和on即关闭和开启,auto则会根据当前⽬录下是否有go.mod ⽂件来判断是否使⽤modules功能,可以通过使用以下命令设置:

go env -w GO111MODULE=on

在编写程序时,可能会涉及使用到第三方提供的依赖包,默认情况下使用“go get 依赖包名”命令时经常会出现timeout问题,这就需要用到GOPROXY环境变量了,可通过以下命令进行设置

go env -w GOPROXY=https://goproxy.cn,direct

再次安装就会成功下载了。


03

HelloWorld

环境配置成功后,现在来教大家如何编写一段代码并打印”Hello,World!”。以下步骤在命令行执行:

1.终端输入”cd”进入”home”目录;

2.首先使用如下命令创建一个”helloword”文件夹,并”cd helloword”进入此目录;

mkdir helloword

3.执行如下命令初始化并写入一个新的go.mod;


4.在helloword目录中执行”vim hello.go”创建一个hello.go文件,写入代码并保存,如图所示:


5.最后输入”go run.”命令,则可打印”Hello,World!”字样:


以上就是本次openKylin系统安装配置Golang环境的教程分享啦,从配置过程来看,并不是很复杂,对这方面感兴趣的小伙伴可以动手学习一下哦~如有更多问题欢迎大家前往openKylin论坛留言告诉我们哦~


openKylin(开放麒麟)社区旨在以“共创”为核心,在开源、自愿、平等、协作的基础上,通过开源、开放的方式与企业构建合作伙伴生态体系,共同打造桌面操作系统顶级社区,推动Linux开源技术及其软硬件生态繁荣发展。

社区首批理事成员单位包括麒麟软件、普华基础软件、中科方德、麒麟信安、凝思软件、一铭软件、中兴新支点、元心科技、中国电科32所、技德系统、北京麟卓、先进操作系统创新中心等13家产业同仁和行业机构。


审核:openKylin