Go lang
Débuter avec le langage Go
Go est un langage compilé
Installation du langage
1brew install golang
1er projet
1mkdir go-hello
2cd go-hello
3go mod init go-hello
4go get github.com/futzu/cuei@latest
créé les fichiers go.mod
et go.sum
fichier cuiedemo.go
1package main
2
3import (
4 "os"
5 "fmt"
6 "github.com/futzu/cuei"
7)
8
9func main() {
10 arg := os.Args[1]
11
12 stream := cuei.NewStream()
13 cues := stream.Decode(arg)
14 for _, cue := range cues {
15 fmt.Printf("Command is a %v\n", cue.Command.Name)
16 }
17}
Compilation
1$ go build cuiedemo.go
2$ ls -alh | grep cuiedemo$
3-rwxr-xr-x@ 1 gus staff 3,5M 14 aoû 20:53 cuiedemo
Compilation optimisée
1$ go build -ldflags="-s -w" cuiedemo.go
2$ ls -alh | grep cuiedemo$
3-rwxr-xr-x@ 1 gus staff 2,4M 14 aoû 20:57 cuiedemo
On gagne 30% de place pour le binaire.
Vérification des bibliothèques partagées utilisée
1% otool -L cuiedemo
2cuiedemo:
3 /usr/lib/libSystem.B.dylib (compatibility version 0.0.0, current version 0.0.0)
4 /usr/lib/libresolv.9.dylib (compatibility version 0.0.0, current version 0.0.0)
5 /System/Library/Frameworks/CoreFoundation.framework/Versions/A/CoreFoundation (compatibility version 0.0.0, current version 0.0.0)
comments powered by Disqus