当前位置:网站首页>Go learning notes (1) environment installation and hello world
Go learning notes (1) environment installation and hello world
2022-07-07 23:54:00 【Raring_ Ringtail】
Time really fast , I have learned 4 More than months go The language . I have loved this language since I first came into contact with it ,go There are many language shadows , Learn quickly and write comfortably . The best thing for me is to use go The written program can package all dependencies into one file , It's very convenient to deploy .
Although with go I've written a lot of code , But there is no systematic study and sorting . Always use what function, go online search . Next, I want to spend a little time studying systematically every day go Language , Write down some experiences and ideas you learned and used , To deepen the go The understanding of the .
If you just want to try go The language of words ,go The official language provides an online programming environment https://go.dev/play/ You can program online directly on the web .
Click after writing Run You can just run it , spot Format The current code will be formatted , If you use VS Code or GoLand The code will be automatically formatted every time the code is saved or compiled .
go The environment installation of is very simple , To https://go.dev/dl/ Just download and install the installer of the corresponding system ,IDE You can use VS Code collocation go Language plug-ins ,VS Code Sometimes there are some small problems when using it , If you want a better programming experience, you can use GoLand,JetBrains Products must be fine .
packed go By default, a go Folder , This is for storing go Some programs and packages of . If you want to change to another directory, you need to modify GOPATH environment variable , Generally, there is no need to modify .
After installation, it can run on the terminal go version
To confirm go It's really installed , If the prompt does not find the command , You need to in PATH Add... To the environment variable go Directory of executable programs . Usually in the user folder go/bin/
Under the folder .
When everything is in place , Find a text editor or IDE( Recommend to use GoLand or VS Code), You can start writing code . One of the simplest Hello World The procedure is as follows
package main
import "fmt"
func main() {
fmt.Println("Hello, world!")
}
Save the code as hello.go
, Run at terminal go run hello.go
Will be output :Hello, world!
go run
Although the command will compile and execute the code , But it will not save the compiled program , If you want to compile the code into an executable file, you need go build
了
function go build .
You can generate an executable file with the current directory name , If you want to specify a file name, you can use go build -o file name
go build
Cross compiling is also supported , The target program compilation of different architectures and systems can be realized on the three mainstream operating systems .
Mac Compile below Linux, Windows Platform 64 Bit executable
CGO_ENABLED=0 GOOS=linux GOARCH=amd64 go build .
CGO_ENABLED=0 GOOS=windows GOARCH=amd64 go build .
Linux Compile below Mac, Windows Platform 64 Bit executable
CGO_ENABLED=0 GOOS=darwin GOARCH=amd64 go build .
CGO_ENABLED=0 GOOS=windows GOARCH=amd64 go build .
Windows Compile below Mac, Linux Platform 64 Bit executable
SET CGO_ENABLED=0 SET GOOS=darwin3 SET GOARCH=amd64 go build .
SET CGO_ENABLED=0 SET GOOS=linux SET GOARCH=amd64 go build .
If you want to compile arm64
The architecture of the program only needs to put the above GOARCH
Set the environment variable to arm64
That's it , Is it very convenient .
Welcome to my WeChat official account. Notes on Jiangda
边栏推荐
- QT and OpenGL: load 3D models using the open asset import library (assimp)
- Chisel tutorial - 05 Sequential logic in chisel (including explicit multi clock, explicit synchronous reset and explicit asynchronous reset)
- AITM3.0005 烟雾毒性测试
- QT and OpenGL: loading 3D models using the open asset import library (assimp) - Part 2
- postgres timestamp转人眼时间字符串或者毫秒值
- One click free translation of more than 300 pages of PDF documents
- mysql8.0 ubuntu20.4
- c—线性表
- UIC564-2 附录4 –阻燃防火测试:火焰的扩散
- C - minute number V3
猜你喜欢
如何衡量产品是否“刚需、高频、痛点”
Get started with mongodb
Install sqlserver2019
Chisel tutorial - 03 Combinatorial logic in chisel (chisel3 cheat sheet is attached at the end)
Laser slam learning (2d/3d, partial practice)
At the age of 35, I made a decision to face unemployment
用语雀写文章了,功能真心强大!
保证接口数据安全的10种方案
How did a fake offer steal $540million from "axie infinity"?
[leetcode] 20. Valid brackets
随机推荐
35岁那年,我做了一个面临失业的决定
PostGIS learning
Restricted linear table
Wechat applet development beginner 1
P2141 [noip2014 popularization group] abacus mental arithmetic test
解析token的网址
一份假Offer如何盗走了「Axie infinity」5.4亿美元?
【leetcode】day1
Ora-02437 failed to verify the primary key violation
C - minute number V3
At the age of 35, I made a decision to face unemployment
【leetcode】day1
95. (cesium chapter) cesium dynamic monomer-3d building (building)
数据库面试题+解析
Kubectl's handy command line tool: Oh my Zsh tips and tricks
One click free translation of more than 300 pages of PDF documents
aws-aws help报错
UIC564-2 附录4 –阻燃防火测试:火焰的扩散
Possible SQL for Oracle table lookup information
AITM3.0005 烟雾毒性测试