Go: инструментарий (продолжение)

Вопросы написания собственного программного кода (на любых языках)

Модератор: Olej

Аватара пользователя
Olej
Писатель
Сообщения: 21338
Зарегистрирован: 24 сен 2011, 14:22
Откуда: Харьков
Контактная информация:

Go: инструментарий (продолжение)

Непрочитанное сообщение Olej » 31 окт 2023, 19:40

Это продолжение темы Go: инструментарий ... там уже очень много набралось - 8 страниц сообщений :!:
И в связи с тем, что давно пора обноаляться :!:
Как выяснилось:
Olej писал(а):
31 окт 2023, 16:31
Пора бы и обновить
... и в связи с началом работы над следующим, 2-м, изданием книги Сети Linux. Модели и приложения:
Go.png
Go.png (52.17 КБ) 422 просмотра

Аватара пользователя
Olej
Писатель
Сообщения: 21338
Зарегистрирован: 24 сен 2011, 14:22
Откуда: Харьков
Контактная информация:

Go: инструментарий (продолжение)

Непрочитанное сообщение Olej » 31 окт 2023, 19:42

Olej писал(а):
31 окт 2023, 19:40
давно пора обноаляться
Первоначально исходники GoLang у меня установлены, ещё здесь в теме Go: инструментарий (продолжение), вот так - повторять не буду:
Olej писал(а):
30 апр 2022, 18:22

Код: Выделить всё

olej@R420:~/2022/Go/hello$ cd $HOME

Код: Выделить всё

olej@R420:~$ git clone https://go.googlesource.com/go goroot
Клонирование в «goroot»…
remote: Sending approximately 275.40 MiB ...
remote: Counting objects: 43, done
remote: Finding sources: 100% (21/21)
remote: Total 525435 (delta 426356), reused 525433 (delta 426356)
Получение объектов: 100% (525435/525435), 274.88 МиБ | 762.00 КиБ/с, готово.
Определение изменений: 100% (426356/426356), готово.
Updating files: 100% (11456/11456), готово.

Аватара пользователя
Olej
Писатель
Сообщения: 21338
Зарегистрирован: 24 сен 2011, 14:22
Откуда: Харьков
Контактная информация:

Go: инструментарий (продолжение)

Непрочитанное сообщение Olej » 31 окт 2023, 19:49

Olej писал(а):
31 окт 2023, 19:42
исходники GoLang у меня установлены
Нужно только обновиться!

Код: Выделить всё

olej@R420:~/goroot$ pwd
/home/olej/goroot

Код: Выделить всё

olej@R420:~/goroot$ git fetch
remote: Finding sources: 100% (38932/38932)
remote: Total 38932 (delta 24844), reused 38926 (delta 24844)
Получение объектов: 100% (38932/38932), 48.15 МиБ | 2.72 МиБ/с, готово.
Определение изменений: 100% (24844/24844), завершено с 2165 локальными объектами.
Из https://go.googlesource.com/go
   6f12eb26e4..72237f94a4  dev.boringcrypto        -> origin/dev.boringcrypto
   fc1ed37e82..7058c2cb41  dev.boringcrypto.go1.18 -> origin/dev.boringcrypto.go1.18
   ec63158d71..71aaa8bde1  dev.inline              -> origin/dev.inline
   bae7d772e8..b6a3c0273e  master                  -> origin/master
   eeaf508d13..581603cb7d  release-branch.go1.18   -> origin/release-branch.go1.18
   e04be8b24c..619b8fd7d2  release-branch.go1.19   -> origin/release-branch.go1.19
   32593a9192..998fdce3ae  release-branch.go1.20   -> origin/release-branch.go1.20
 * [новая ветка]           release-branch.go1.21   -> origin/release-branch.go1.21
   bdd4b9503e..ceb95ea6ae  release-branch.go1.4    -> origin/release-branch.go1.4
 * [новая метка]           go1.18.10               -> go1.18.10
 * [новая метка]           go1.19.13               -> go1.19.13
 * [новая метка]           go1.19.10               -> go1.19.10
 * [новая метка]           go1.19.11               -> go1.19.11
 * [новая метка]           go1.19.12               -> go1.19.12
 * [новая метка]           go1.19.5                -> go1.19.5
 * [новая метка]           go1.19.6                -> go1.19.6
 * [новая метка]           go1.19.7                -> go1.19.7
 * [новая метка]           go1.19.8                -> go1.19.8
 * [новая метка]           go1.19.9                -> go1.19.9
 * [новая метка]           go1.20                  -> go1.20
 * [новая метка]           go1.20.1                -> go1.20.1
 * [новая метка]           go1.20.10               -> go1.20.10
 * [новая метка]           go1.20.2                -> go1.20.2
 * [новая метка]           go1.20.3                -> go1.20.3
 * [новая метка]           go1.20.4                -> go1.20.4
 * [новая метка]           go1.20.5                -> go1.20.5
 * [новая метка]           go1.20.6                -> go1.20.6
 * [новая метка]           go1.20.7                -> go1.20.7
 * [новая метка]           go1.20.8                -> go1.20.8
 * [новая метка]           go1.20.9                -> go1.20.9
 * [новая метка]           go1.20rc3               -> go1.20rc3
 * [новая метка]           go1.21.0                -> go1.21.0
 * [новая метка]           go1.21.1                -> go1.21.1
 * [новая метка]           go1.21.2                -> go1.21.2
 * [новая метка]           go1.21.3                -> go1.21.3
 * [новая метка]           go1.21rc1               -> go1.21rc1
 * [новая метка]           go1.21rc2               -> go1.21rc2
 * [новая метка]           go1.21rc3               -> go1.21rc3
 * [новая метка]           go1.21rc4               -> go1.21rc4
По поводу выбора последней, но стабильной, версии сверяемся здесь Release History и здесь All releases...

Код: Выделить всё

olej@R420:~/goroot$ git branch
* (HEAD отделён на go1.20rc2)
  help
  master

Код: Выделить всё

olej@R420:~/goroot$ git checkout go1.21.3
Предыдущая позиция HEAD была 32593a9192 [release-branch.go1.20] go1.20rc2
HEAD сейчас на 883f062fc0 [release-branch.go1.21] go1.21.3

Код: Выделить всё

olej@R420:~/goroot$ git branch
* (HEAD отделён на go1.21.3)
  help
  master

Аватара пользователя
Olej
Писатель
Сообщения: 21338
Зарегистрирован: 24 сен 2011, 14:22
Откуда: Харьков
Контактная информация:

Go: инструментарий (продолжение)

Непрочитанное сообщение Olej » 31 окт 2023, 20:24

Olej писал(а):
31 окт 2023, 19:49
Нужно только обновиться!
Сборка GoLang производится самим GoLang - способ раскрутки.
У меня для раскрутки установлены:

Код: Выделить всё

olej@R420:~/2023/Yggdrasil/Yggdrasil.maining$ update-alternatives --list go
/home/olej/goroot/bin/go
/lib/go-1.13/bin/go
/lib/go-1.18/bin/go

Код: Выделить всё

olej@R420:~/2023/Yggdrasil/Yggdrasil.maining$ update-alternatives --display go
go - ручной режим
  лучшая версия ссылки — /home/olej/goroot/bin/go
  ссылка сейчас указывает на /home/olej/goroot/bin/go
  ссылка go — /usr/bin/go
/home/olej/goroot/bin/go — приоритет 80
/lib/go-1.13/bin/go — приоритет 60
/lib/go-1.18/bin/go — приоритет 75

Код: Выделить всё

olej@R420:~/2023/Yggdrasil/Yggdrasil.maining$ go version
go version go1.20rc2 linux/amd64

Аватара пользователя
Olej
Писатель
Сообщения: 21338
Зарегистрирован: 24 сен 2011, 14:22
Откуда: Харьков
Контактная информация:

Go: инструментарий (продолжение)

Непрочитанное сообщение Olej » 31 окт 2023, 20:25

Olej писал(а):
31 окт 2023, 20:24
Сборка GoLang

Код: Выделить всё

olej@R420:~/goroot$ cd src

Код: Выделить всё

olej@R420:~/goroot/src$ time ./all.bash
ERROR: Cannot find /home/olej/go1.4/bin/go.
Set $GOROOT_BOOTSTRAP to a working Go tree >= Go 1.17.13.

real	0m0,025s
user	0m0,011s
sys	0m0,018s
И тут облом :!: :oops:

Аватара пользователя
Olej
Писатель
Сообщения: 21338
Зарегистрирован: 24 сен 2011, 14:22
Откуда: Харьков
Контактная информация:

Go: инструментарий (продолжение)

Непрочитанное сообщение Olej » 31 окт 2023, 20:31

Olej писал(а):
31 окт 2023, 20:25
И тут облом
Эта история известная ... И я в неё попадаю уже 2-й раз: Go : инструментарий (продолжение) :!:
Oh no! Errors!
But hey, I was already on Go 1.8.1! So I needed to set $GOROOT_BOOTSTRAP environment variable to point to the Go 1.8.1 binary. This error occurs because it defaults to $GOROOT if not specified and my $GOROOT is also not set (since I don’t have a custom installation). Oops.

The simple fix:

Код: Выделить всё

$ export GOROOT_BOOTSTRAP=/usr/local/go

Код: Выделить всё

olej@R420:~/goroot/src$ export GOROOT_BOOTSTRAP=/lib/go-1.18; time ./all.bash
Building Go cmd/dist using /lib/go-1.18. (go1.18.1 linux/amd64)
Building Go toolchain1 using /lib/go-1.18.
Building Go bootstrap cmd/go (go_bootstrap) using Go toolchain1.
Building Go toolchain2 using go_bootstrap and Go toolchain1.
Building Go toolchain3 using go_bootstrap and Go toolchain2.
Building packages and commands for linux/amd64.

##### Test execution environment.
# GOARCH: amd64
# CPU: Intel(R) Xeon(R) CPU E5-2470 v2 @ 2.40GHz
# GOOS: linux
# OS Version: Linux 5.15.0-88-generic #98-Ubuntu SMP Mon Oct 2 15:18:56 UTC 2023 x86_64

##### Testing packages.
ok  	archive/tar	0.241s
ok  	archive/zip	0.127s
ok  	bufio	0.065s
ok  	bytes	0.239s
ok  	cmp	0.007s
ok  	compress/bzip2	0.078s
ok  	compress/flate	0.378s
ok  	compress/gzip	3.091s
ok  	compress/lzw	0.021s
ok  	compress/zlib	0.039s
ok  	container/heap	0.008s
ok  	container/list	0.004s
ok  	container/ring	0.004s
ok  	context	0.025s
ok  	crypto	0.004s
ok  	crypto/aes	0.024s
ok  	crypto/cipher	0.010s
ok  	crypto/des	0.010s
ok  	crypto/dsa	0.005s
ok  	crypto/ecdh	0.065s
ok  	crypto/ecdsa	0.033s
ok  	crypto/ed25519	0.115s
ok  	crypto/elliptic	0.031s
ok  	crypto/hmac	0.008s
ok  	crypto/internal/alias	0.004s
ok  	crypto/internal/bigmod	0.371s
ok  	crypto/internal/boring	0.004s
ok  	crypto/internal/boring/bcache	0.180s
ok  	crypto/internal/edwards25519	6.300s
ok  	crypto/internal/edwards25519/field	4.531s
ok  	crypto/internal/nistec	0.242s
ok  	crypto/internal/nistec/fiat	0.003s [no tests to run]
ok  	crypto/md5	0.022s
ok  	crypto/rand	0.078s
ok  	crypto/rc4	0.067s
ok  	crypto/rsa	0.590s
ok  	crypto/sha1	0.041s
ok  	crypto/sha256	0.006s
ok  	crypto/sha512	0.006s
ok  	crypto/subtle	0.230s
ok  	crypto/tls	0.768s
ok  	crypto/x509	0.584s
ok  	database/sql	0.553s
ok  	database/sql/driver	0.003s
ok  	debug/buildinfo	0.010s
ok  	debug/dwarf	0.039s
ok  	debug/elf	0.343s
ok  	debug/gosym	0.361s
ok  	debug/macho	0.016s
ok  	debug/pe	0.035s
ok  	debug/plan9obj	0.012s
ok  	embed	0.004s [no tests to run]
ok  	embed/internal/embedtest	0.004s
ok  	encoding/ascii85	0.006s
ok  	encoding/asn1	0.006s
ok  	encoding/base32	0.024s
ok  	encoding/base64	0.006s
ok  	encoding/binary	0.007s
ok  	encoding/csv	0.012s
ok  	encoding/gob	2.009s
ok  	encoding/hex	0.005s
ok  	encoding/json	0.300s
ok  	encoding/pem	0.648s
ok  	encoding/xml	0.092s
ok  	errors	0.010s
ok  	expvar	0.010s
ok  	flag	0.030s
ok  	fmt	0.096s
ok  	go/ast	0.011s
ok  	go/build	2.495s
ok  	go/build/constraint	0.010s
ok  	go/constant	0.010s
ok  	go/doc	0.086s
ok  	go/doc/comment	1.235s
ok  	go/format	0.015s
ok  	go/importer	0.332s
ok  	go/internal/gccgoimporter	4.010s
ok  	go/internal/gcimporter	2.104s
ok  	go/internal/srcimporter	11.013s
ok  	go/parser	0.419s
ok  	go/printer	0.264s
ok  	go/scanner	0.018s
ok  	go/token	0.023s
ok  	go/types	8.234s
ok  	hash	0.004s
ok  	hash/adler32	0.007s
ok  	hash/crc32	0.007s
ok  	hash/crc64	0.004s
ok  	hash/fnv	0.004s
ok  	hash/maphash	0.121s
ok  	html	0.004s
ok  	html/template	0.102s
ok  	image	0.068s
ok  	image/color	0.025s
ok  	image/draw	0.126s
ok  	image/gif	0.279s
ok  	image/jpeg	0.205s
ok  	image/png	0.472s
ok  	index/suffixarray	0.295s
ok  	internal/abi	0.064s
ok  	internal/buildcfg	0.004s
ok  	internal/coverage/cformat	0.003s
ok  	internal/coverage/cmerge	0.002s
ok  	internal/coverage/pods	0.004s
ok  	internal/coverage/slicereader	0.003s
ok  	internal/coverage/slicewriter	0.003s
ok  	internal/coverage/test	0.009s
ok  	internal/cpu	0.031s
ok  	internal/dag	0.008s
ok  	internal/diff	0.007s
ok  	internal/fmtsort	0.027s
ok  	internal/fuzz	0.023s
ok  	internal/godebug	0.900s
ok  	internal/godebugs	0.003s
ok  	internal/intern	0.342s
ok  	internal/itoa	0.014s
ok  	internal/platform	1.325s
ok  	internal/poll	0.213s
ok  	internal/profile	0.003s
ok  	internal/reflectlite	0.007s
ok  	internal/safefilepath	0.016s
ok  	internal/saferio	0.072s
ok  	internal/singleflight	0.028s
ok  	internal/testenv	0.327s
ok  	internal/trace	0.075s
ok  	internal/types/errors	0.757s
ok  	internal/unsafeheader	0.021s
ok  	internal/xcoff	0.024s
ok  	internal/zstd	0.234s
ok  	io	0.071s
ok  	io/fs	0.568s
ok  	io/ioutil	0.011s
ok  	log	0.015s
ok  	log/slog	0.085s
ok  	log/slog/internal/benchmarks	0.010s
ok  	log/slog/internal/buffer	0.017s
ok  	log/syslog	1.240s
ok  	maps	0.009s
ok  	math	0.013s
ok  	math/big	1.664s
ok  	math/bits	0.021s
ok  	math/cmplx	0.018s
ok  	math/rand	0.173s
ok  	mime	0.018s
ok  	mime/multipart	1.041s
ok  	mime/quotedprintable	0.064s
ok  	net	10.012s
ok  	net/http	5.320s
ok  	net/http/cgi	0.466s
ok  	net/http/cookiejar	0.010s
ok  	net/http/fcgi	0.209s
ok  	net/http/httptest	0.075s
ok  	net/http/httptrace	0.006s
ok  	net/http/httputil	0.652s
ok  	net/http/internal	0.006s
ok  	net/http/internal/ascii	0.004s
ok  	net/http/pprof	5.072s
ok  	net/internal/socktest	0.004s
ok  	net/mail	0.014s
ok  	net/netip	0.748s
ok  	net/rpc	0.033s
ok  	net/rpc/jsonrpc	0.009s
ok  	net/smtp	0.026s
ok  	net/textproto	0.072s
ok  	net/url	0.013s
ok  	os	1.206s
ok  	os/exec	0.498s
ok  	os/exec/internal/fdtest	0.005s
ok  	os/signal	2.591s
ok  	os/user	0.007s
ok  	path	0.010s
ok  	path/filepath	0.053s
ok  	plugin	0.023s
ok  	reflect	0.949s
ok  	regexp	0.948s
ok  	regexp/syntax	1.459s
ok  	runtime	41.543s
ok  	runtime/cgo	0.004s
ok  	runtime/coverage	0.003s
ok  	runtime/debug	0.062s
ok  	runtime/internal/atomic	0.060s
ok  	runtime/internal/math	0.003s
ok  	runtime/internal/sys	0.004s
ok  	runtime/internal/syscall	0.003s
ok  	runtime/internal/wasitest	0.009s
ok  	runtime/metrics	0.007s
ok  	runtime/pprof	7.087s
ok  	runtime/trace	3.150s
ok  	slices	0.107s
ok  	sort	0.066s
ok  	strconv	0.582s
ok  	strings	0.124s
ok  	sync	0.329s
ok  	sync/atomic	2.687s
ok  	syscall	3.972s
ok  	testing	1.494s
ok  	testing/fstest	0.017s
ok  	testing/iotest	0.022s
ok  	testing/quick	0.067s
ok  	testing/slogtest	0.006s
ok  	text/scanner	0.036s
ok  	text/tabwriter	0.016s
ok  	text/template	0.086s
ok  	text/template/parse	0.022s
ok  	time	2.273s
ok  	unicode	0.020s
ok  	unicode/utf16	0.015s
ok  	unicode/utf8	0.031s
ok  	cmd/addr2line	1.573s
ok  	cmd/api	1.491s
ok  	cmd/asm/internal/asm	0.834s
ok  	cmd/asm/internal/lex	0.012s
ok  	cmd/cgo/internal/swig	0.022s
ok  	cmd/cgo/internal/test	1.121s
ok  	cmd/cgo/internal/testcarchive	0.003s
ok  	cmd/cgo/internal/testcshared	0.004s
ok  	cmd/cgo/internal/testerrors	15.277s
ok  	cmd/cgo/internal/testfortran	2.358s
ok  	cmd/cgo/internal/testgodefs	1.064s
ok  	cmd/cgo/internal/testlife	1.064s
ok  	cmd/cgo/internal/testnocgo	0.003s
ok  	cmd/cgo/internal/testplugin	0.003s
ok  	cmd/cgo/internal/testsanitizers	21.718s
ok  	cmd/cgo/internal/testshared	79.263s
ok  	cmd/cgo/internal/testso	2.306s
ok  	cmd/cgo/internal/teststdio	2.507s
ok  	cmd/cgo/internal/testtls	0.003s
ok  	cmd/compile/internal/abt	0.011s
ok  	cmd/compile/internal/amd64	3.443s
ok  	cmd/compile/internal/base	0.004s
ok  	cmd/compile/internal/compare	0.003s
ok  	cmd/compile/internal/dwarfgen	0.374s
ok  	cmd/compile/internal/importer	1.624s
ok  	cmd/compile/internal/ir	0.003s
ok  	cmd/compile/internal/logopt	0.338s
ok  	cmd/compile/internal/loopvar	44.235s
ok  	cmd/compile/internal/noder	0.004s
ok  	cmd/compile/internal/reflectdata	0.003s [no tests to run]
ok  	cmd/compile/internal/ssa	34.684s
ok  	cmd/compile/internal/syntax	0.093s
ok  	cmd/compile/internal/test	14.876s
ok  	cmd/compile/internal/typecheck	0.910s
ok  	cmd/compile/internal/types	0.003s
ok  	cmd/compile/internal/types2	11.068s
ok  	cmd/covdata	0.017s
ok  	cmd/cover	3.581s
ok  	cmd/dist	0.005s
ok  	cmd/distpack	0.005s
ok  	cmd/doc	0.426s
ok  	cmd/fix	1.369s
ok  	cmd/go	23.607s
ok  	cmd/go/internal/auth	0.005s
ok  	cmd/go/internal/cache	0.397s
ok  	cmd/go/internal/envcmd	0.046s
ok  	cmd/go/internal/fsys	0.042s
ok  	cmd/go/internal/generate	0.014s
ok  	cmd/go/internal/get	0.027s
ok  	cmd/go/internal/gover	0.018s
ok  	cmd/go/internal/imports	0.037s
ok  	cmd/go/internal/load	0.022s
ok  	cmd/go/internal/lockedfile	0.203s
ok  	cmd/go/internal/lockedfile/internal/filelock	0.050s
ok  	cmd/go/internal/modconv	0.024s
ok  	cmd/go/internal/modfetch	0.014s
ok  	cmd/go/internal/modfetch/codehost	4.114s
ok  	cmd/go/internal/modfetch/zip_sum_test	0.011s
ok  	cmd/go/internal/modindex	0.367s
ok  	cmd/go/internal/modload	0.014s
ok  	cmd/go/internal/mvs	0.015s
ok  	cmd/go/internal/par	0.024s
ok  	cmd/go/internal/str	0.006s
ok  	cmd/go/internal/test	0.028s
ok  	cmd/go/internal/toolchain	0.018s
ok  	cmd/go/internal/vcs	0.015s
ok  	cmd/go/internal/vcweb	0.022s
ok  	cmd/go/internal/vcweb/vcstest	14.878s
ok  	cmd/go/internal/web	0.030s
ok  	cmd/go/internal/work	0.136s
ok  	cmd/gofmt	0.063s
ok  	cmd/internal/archive	1.640s
ok  	cmd/internal/bootstrap_test	0.037s
ok  	cmd/internal/buildid	0.742s
ok  	cmd/internal/cov	1.007s
ok  	cmd/internal/dwarf	0.025s
ok  	cmd/internal/edit	0.023s
ok  	cmd/internal/goobj	0.021s
ok  	cmd/internal/moddeps	0.288s
ok  	cmd/internal/notsha256	0.023s
ok  	cmd/internal/obj	1.780s
ok  	cmd/internal/obj/ppc64	0.526s
ok  	cmd/internal/obj/riscv	0.165s
ok  	cmd/internal/obj/s390x	0.036s
ok  	cmd/internal/obj/x86	0.874s
ok  	cmd/internal/objabi	0.012s
ok  	cmd/internal/pkgpath	0.183s
ok  	cmd/internal/pkgpattern	0.014s
ok  	cmd/internal/quoted	0.008s
ok  	cmd/internal/src	0.016s
ok  	cmd/internal/test2json	0.463s
ok  	cmd/link	7.063s
ok  	cmd/link/internal/benchmark	0.004s
ok  	cmd/link/internal/ld	2.663s
ok  	cmd/link/internal/loader	0.040s
ok  	cmd/nm	2.673s
ok  	cmd/objdump	3.601s
ok  	cmd/pack	1.959s
ok  	cmd/pprof	2.705s
ok  	cmd/trace	0.315s
ok  	cmd/vet	4.084s

##### os/user with tag osusergo
ok  	os/user	0.006s

##### hash/maphash purego implementation
ok  	hash/maphash	0.080s

##### GOMAXPROCS=2 runtime -cpu=1,2,4 -quick
ok  	runtime	31.125s

##### Testing without libgcc.
ok  	net	0.009s
ok  	os/user	0.004s

##### internal linking of -buildmode=pie
ok  	reflect	0.236s
ok  	os/user	0.004s

##### sync -cpu=10
ok  	sync	0.353s

##### Testing race detector
ok  	runtime/race	5.778s
ok  	flag	1.030s
ok  	net	1.145s
ok  	os	1.140s
ok  	os/exec	2.057s
ok  	encoding/gob	1.076s
ok  	flag	1.027s
ok  	os/exec	2.047s

##### Testing cgo
ok  	cmd/cgo/internal/test	0.933s
ok  	cmd/cgo/internal/test	0.897s
ok  	cmd/cgo/internal/testtls	0.004s
ok  	cmd/cgo/internal/testtls	0.003s
ok  	cmd/cgo/internal/testnocgo	0.005s
ok  	cmd/cgo/internal/testnocgo	0.005s
ok  	cmd/cgo/internal/test	0.905s
ok  	cmd/cgo/internal/test	0.912s
ok  	cmd/cgo/internal/test	0.912s
ok  	cmd/cgo/internal/test	0.922s
ok  	cmd/cgo/internal/testtls	0.004s
ok  	cmd/cgo/internal/testnocgo	0.003s

##### ../test
ok  	cmd/internal/testdir	28.582s

##### API check
ok  	cmd/api	35.578s

ALL TESTS PASSED
---
Installed Go for linux/amd64 in /home/olej/goroot
Installed commands in /home/olej/goroot/bin
*** You need to add /home/olej/goroot/bin to your PATH.

real	6m47,785s
user	60m45,959s
sys	11m9,142s
Сборка весьма напряжённая :!: (выше показано работу 6 минут 2-х серверных процессоров в 40 ядер :-o )
Но оно того стоит:

Код: Выделить всё

olej@R420:~/goroot/src$ go version
go version go1.21.3 linux/amd64

Аватара пользователя
Olej
Писатель
Сообщения: 21338
Зарегистрирован: 24 сен 2011, 14:22
Откуда: Харьков
Контактная информация:

Go: инструментарий (продолжение)

Непрочитанное сообщение Olej » 31 окт 2023, 21:01

Olej писал(а):
31 окт 2023, 19:40
Go: инструментарий

Код: Выделить всё

[olej@xenix etc]$ cat /etc/fedora-release 
Fedora release 38 (Thirty Eight)

Код: Выделить всё

[olej@xenix etc]$ cat /etc/system-release
Fedora release 38 (Thirty Eight)
В RPM-дистрибутивах всё немного по-другому, из-за другой работы с альтернативами...

Код: Выделить всё

[olej@xenix ~]$ dnf list installed '*golang*'
Установленные пакеты
golang.x86_64                                                                1.20.10-2.fc38                                                            @updates
golang-bin.x86_64                                                            1.20.10-2.fc38                                                            @updates
golang-src.noarch                                                            1.20.10-2.fc38                                                            @updates

Код: Выделить всё

[olej@xenix ~]$ go version
go version go1.20.10 linux/amd64

Код: Выделить всё

[olej@xenix ~]$ alternatives --display go
go - статус «авто».
 ссылка указывает на /usr/lib/golang/bin/go
/usr/lib/golang/bin/go - приоритет 90
 follower gofmt: /usr/lib/golang/bin/gofmt
Оптимальная версия — /usr/lib/golang/bin/go.

Код: Выделить всё

[olej@xenix ~]$ sudo alternatives --config go
[sudo] пароль для olej: 

Обнаружена 1 программа, предоставляющая «go».

  Выбор    Команда
-----------------------------------------------
*+ 1           /usr/lib/golang/bin/go

Enter - сохранить текущий выбор[+], или укажите номер: 
Мне этой версии GoLang для работы пока достаточно ... но нужно будет, на досуге, проделать установку из исходников в RPM.

Аватара пользователя
Olej
Писатель
Сообщения: 21338
Зарегистрирован: 24 сен 2011, 14:22
Откуда: Харьков
Контактная информация:

Go: инструментарий (продолжение)

Непрочитанное сообщение Olej » 31 окт 2023, 21:08

Olej писал(а):
31 окт 2023, 21:01
но нужно будет, на досуге, проделать установку из исходников в RPM.

Код: Выделить всё

[olej@xenix ~]$ cd $HOME

Код: Выделить всё

[olej@xenix ~]$ git clone https://go.googlesource.com/go goroot
Клонирование в «goroot»...
remote: Finding sources: 100% (35/35)
remote: Total 594337 (delta 470107), reused 594329 (delta 470107)
Получение объектов: 100% (594337/594337), 364.56 МиБ | 3.12 МиБ/с, готово.
Определение изменений: 100% (470107/470107), готово.
Updating files: 100% (12663/12663), готово.

Код: Выделить всё

[
olej@xenix ~]$ du -hs goroot/
529M	goroot/
Не мало :!:

Аватара пользователя
Olej
Писатель
Сообщения: 21338
Зарегистрирован: 24 сен 2011, 14:22
Откуда: Харьков
Контактная информация:

Go: инструментарий (продолжение)

Непрочитанное сообщение Olej » 31 окт 2023, 21:16

Сборка...

Код: Выделить всё

[olej@xenix ~]$ cd goroot/src/
Такой вот ... достаточно не слабый процессор:

Код: Выделить всё

[olej@xenix etc]$ inxi -Cxxx
CPU:
  Info: quad core model: Intel Core i7-4870HQ bits: 64 type: MT MCP
    smt: enabled arch: Haswell rev: 1 cache: L1: 256 KiB L2: 1024 KiB L3: 6 MiB
  Speed (MHz): avg: 1018 high: 2494 min/max: 800/3700 cores: 1: 798 2: 800
    3: 835 4: 800 5: 811 6: 800 7: 806 8: 2494 bogomips: 39911
  Flags: avx avx2 ht lm nx pae sse sse2 sse3 sse4_1 sse4_2 ssse3 vmx
Загрузка "до того"...

Код: Выделить всё

[olej@xenix etc]$ uptime
 20:06:48 up 33 min,  1 user,  load average: 0,77, 0,83, 0,68
Начинается сборка...

Код: Выделить всё

[olej@xenix src]$ time ./all.bash
Building Go cmd/dist using /usr/lib/golang. (go1.20.10 linux/amd64)
Building Go toolchain1 using /usr/lib/golang.
Building Go bootstrap cmd/go (go_bootstrap) using Go toolchain1.
Building Go toolchain2 using go_bootstrap and Go toolchain1.
Building Go toolchain3 using go_bootstrap and Go toolchain2.
Building packages and commands for linux/amd64.

##### Test execution environment.
# GOARCH: amd64
# CPU: Intel(R) Core(TM) i7-4870HQ CPU @ 2.50GHz
# GOOS: linux
# OS Version: Linux 6.5.8-200.fc38.x86_64 #1 SMP PREEMPT_DYNAMIC Fri Oct 20 15:53:48 UTC 2023 x86_64
...

Код: Выделить всё

[olej@xenix etc]$ uptime
 20:12:35 up 39 min,  1 user,  load average: 5,63, 2,22, 1,22
...

Код: Выделить всё

[olej@xenix etc]$ uptime
 20:14:21 up 41 min,  1 user,  load average: 12,91, 6,05, 2,73
...

Код: Выделить всё

[olej@xenix etc]$ uptime
 20:16:03 up 42 min,  1 user,  load average: 14,27, 8,51, 3,96
...
Для 4-х ядер - это круто :!: :oops: :-o

Код: Выделить всё

[olej@xenix etc]$ uptime
 20:18:43 up 45 min,  1 user,  load average: 22,22, 16,37, 7,84

Аватара пользователя
Olej
Писатель
Сообщения: 21338
Зарегистрирован: 24 сен 2011, 14:22
Откуда: Харьков
Контактная информация:

Go: инструментарий (продолжение)

Непрочитанное сообщение Olej » 31 окт 2023, 21:22

Olej писал(а):
31 окт 2023, 21:16
Для 4-х ядер - это круто
Но завершилось умеренно быстро ...

Код: Выделить всё

[olej@xenix src]$ time ./all.bash
Building Go cmd/dist using /usr/lib/golang. (go1.20.10 linux/amd64)
Building Go toolchain1 using /usr/lib/golang.
Building Go bootstrap cmd/go (go_bootstrap) using Go toolchain1.
Building Go toolchain2 using go_bootstrap and Go toolchain1.
Building Go toolchain3 using go_bootstrap and Go toolchain2.
Building packages and commands for linux/amd64.

##### Test execution environment.
# GOARCH: amd64
# CPU: Intel(R) Core(TM) i7-4870HQ CPU @ 2.50GHz
# GOOS: linux
# OS Version: Linux 6.5.8-200.fc38.x86_64 #1 SMP PREEMPT_DYNAMIC Fri Oct 20 15:53:48 UTC 2023 x86_64

##### Testing packages.
ok  	archive/tar	4.730s
ok  	archive/zip	0.090s
ok  	bufio	0.048s
ok  	bytes	0.184s
ok  	cmp	0.018s
ok  	compress/bzip2	0.092s
ok  	compress/flate	0.492s
ok  	compress/gzip	1.629s
ok  	compress/lzw	0.006s
ok  	compress/zlib	0.017s
ok  	container/heap	0.003s
ok  	container/list	0.002s
ok  	container/ring	0.002s
ok  	context	0.019s
ok  	crypto	0.002s
ok  	crypto/aes	0.021s
ok  	crypto/cipher	0.006s
ok  	crypto/des	0.009s
ok  	crypto/dsa	0.004s
ok  	crypto/ecdh	0.050s
ok  	crypto/ecdsa	0.040s
ok  	crypto/ed25519	0.712s
ok  	crypto/elliptic	0.007s
ok  	crypto/hmac	0.002s
ok  	crypto/internal/alias	0.002s
ok  	crypto/internal/bigmod	0.281s
ok  	crypto/internal/boring	0.002s
ok  	crypto/internal/boring/bcache	0.114s
ok  	crypto/internal/edwards25519	0.111s
ok  	crypto/internal/edwards25519/field	0.018s
ok  	crypto/internal/nistec	0.253s
ok  	crypto/internal/nistec/fiat	0.003s [no tests to run]
ok  	crypto/md5	0.004s
ok  	crypto/rand	0.062s
ok  	crypto/rc4	0.034s
ok  	crypto/rsa	0.606s
ok  	crypto/sha1	0.031s
ok  	crypto/sha256	0.020s
ok  	crypto/sha512	0.009s
ok  	crypto/subtle	0.200s
ok  	crypto/tls	5.402s
ok  	crypto/x509	5.748s
ok  	database/sql	0.520s
ok  	database/sql/driver	0.005s
ok  	debug/buildinfo	0.007s
ok  	debug/dwarf	0.020s
ok  	debug/elf	0.247s
ok  	debug/gosym	0.260s
ok  	debug/macho	0.008s
ok  	debug/pe	0.012s
ok  	debug/plan9obj	0.003s
ok  	embed	0.007s [no tests to run]
ok  	embed/internal/embedtest	0.011s
ok  	encoding/ascii85	0.004s
ok  	encoding/asn1	0.005s
ok  	encoding/base32	0.041s
ok  	encoding/base64	0.004s
ok  	encoding/binary	0.011s
ok  	encoding/csv	0.022s
ok  	encoding/gob	2.234s
ok  	encoding/hex	0.003s
ok  	encoding/json	0.286s
ok  	encoding/pem	0.563s
ok  	encoding/xml	0.068s
ok  	errors	0.005s
ok  	expvar	0.008s
ok  	flag	0.038s
ok  	fmt	0.114s
ok  	go/ast	0.040s
ok  	go/build	2.526s
ok  	go/build/constraint	0.003s
ok  	go/constant	0.005s
ok  	go/doc	0.073s
ok  	go/doc/comment	1.199s
ok  	go/format	0.006s
ok  	go/importer	0.365s
ok  	go/internal/gccgoimporter	0.009s
ok  	go/internal/gcimporter	2.151s
ok  	go/internal/srcimporter	9.685s
ok  	go/parser	0.353s
ok  	go/printer	0.256s
ok  	go/scanner	0.014s
ok  	go/token	0.023s
ok  	go/types	4.257s
ok  	hash	0.003s
ok  	hash/adler32	0.005s
ok  	hash/crc32	0.006s
ok  	hash/crc64	0.004s
ok  	hash/fnv	0.002s
ok  	hash/maphash	0.088s
ok  	html	0.035s
ok  	html/template	0.090s
ok  	image	0.058s
ok  	image/color	0.029s
ok  	image/draw	0.109s
ok  	image/gif	0.274s
ok  	image/jpeg	0.235s
ok  	image/png	0.290s
ok  	index/suffixarray	0.157s
ok  	internal/abi	0.073s
ok  	internal/buildcfg	0.002s
ok  	internal/coverage/cformat	0.002s
ok  	internal/coverage/cmerge	0.002s
ok  	internal/coverage/pods	0.003s
ok  	internal/coverage/slicereader	0.003s
ok  	internal/coverage/slicewriter	0.002s
ok  	internal/coverage/test	0.009s
ok  	internal/cpu	0.007s
ok  	internal/dag	0.003s
ok  	internal/diff	0.004s
ok  	internal/fmtsort	0.003s
ok  	internal/fuzz	0.007s
ok  	internal/godebug	1.083s
ok  	internal/godebugs	0.002s
ok  	internal/intern	0.377s
ok  	internal/itoa	0.028s
ok  	internal/platform	1.221s
ok  	internal/poll	0.086s
ok  	internal/profile	0.002s
ok  	internal/reflectlite	0.003s
ok  	internal/safefilepath	0.002s
ok  	internal/saferio	0.042s
ok  	internal/singleflight	0.017s
ok  	internal/testenv	0.232s
ok  	internal/trace	0.043s
ok  	internal/types/errors	0.613s
ok  	internal/unsafeheader	0.002s
ok  	internal/xcoff	0.019s
ok  	internal/zstd	0.672s
ok  	io	0.037s
ok  	io/fs	0.392s
ok  	io/ioutil	0.004s
ok  	log	0.005s
ok  	log/slog	0.022s
ok  	log/slog/internal/benchmarks	0.002s
ok  	log/slog/internal/buffer	0.002s
ok  	log/syslog	1.223s
ok  	maps	0.007s
ok  	math	0.021s
ok  	math/big	1.409s
ok  	math/bits	0.004s
ok  	math/cmplx	0.003s
ok  	math/rand	0.122s
ok  	math/rand/v2	0.353s
ok  	mime	0.009s
ok  	mime/multipart	0.825s
ok  	mime/quotedprintable	0.045s
ok  	net	11.253s
ok  	net/http	6.225s
ok  	net/http/cgi	2.082s
ok  	net/http/cookiejar	0.006s
ok  	net/http/fcgi	0.206s
ok  	net/http/httptest	0.034s
ok  	net/http/httptrace	0.003s
ok  	net/http/httputil	0.551s
ok  	net/http/internal	0.002s
ok  	net/http/internal/ascii	0.001s
ok  	net/http/pprof	5.106s
ok  	net/internal/socktest	0.004s
ok  	net/mail	0.006s
ok  	net/netip	0.547s
ok  	net/rpc	0.022s
ok  	net/rpc/jsonrpc	0.005s
ok  	net/smtp	0.013s
ok  	net/textproto	0.016s
ok  	net/url	0.007s
ok  	os	0.516s
ok  	os/exec	0.263s
ok  	os/exec/internal/fdtest	0.004s
ok  	os/signal	2.168s
ok  	os/user	0.007s
ok  	path	0.008s
ok  	path/filepath	0.016s
ok  	plugin	0.025s
ok  	reflect	0.140s
ok  	regexp	0.398s
ok  	regexp/syntax	0.870s
ok  	runtime	68.963s
ok  	runtime/cgo	0.004s
ok  	runtime/coverage	0.003s
ok  	runtime/debug	0.041s
ok  	runtime/internal/atomic	0.038s
ok  	runtime/internal/math	0.003s
ok  	runtime/internal/sys	0.002s
ok  	runtime/internal/syscall	0.003s
ok  	runtime/internal/wasitest	0.035s
ok  	runtime/metrics	0.010s
ok  	runtime/pprof	8.213s
ok  	runtime/trace	2.592s
ok  	slices	0.137s
ok  	sort	0.081s
ok  	strconv	0.469s
ok  	strings	0.187s
ok  	sync	0.430s
ok  	sync/atomic	1.050s
ok  	syscall	5.607s
ok  	testing	0.998s
ok  	testing/fstest	0.004s
ok  	testing/iotest	0.002s
ok  	testing/quick	0.044s
ok  	testing/slogtest	0.005s
ok  	text/scanner	0.004s
ok  	text/tabwriter	0.016s
ok  	text/template	0.023s
ok  	text/template/parse	0.006s
ok  	time	5.192s
ok  	unicode	0.003s
ok  	unicode/utf16	0.003s
ok  	unicode/utf8	0.005s
ok  	cmd/addr2line	0.545s
ok  	cmd/api	0.428s
ok  	cmd/asm/internal/asm	0.464s
ok  	cmd/asm/internal/lex	0.003s
ok  	cmd/cgo/internal/swig	0.007s
ok  	cmd/cgo/internal/test	0.884s
ok  	cmd/cgo/internal/testcarchive	0.003s
ok  	cmd/cgo/internal/testcshared	0.002s
ok  	cmd/cgo/internal/testerrors	19.721s
ok  	cmd/cgo/internal/testfortran	0.014s
ok  	cmd/cgo/internal/testgodefs	0.713s
ok  	cmd/cgo/internal/testlife	0.774s
ok  	cmd/cgo/internal/testnocgo	0.002s
ok  	cmd/cgo/internal/testplugin	0.002s
ok  	cmd/cgo/internal/testsanitizers	0.081s
ok  	cmd/cgo/internal/testshared	0.004s
ok  	cmd/cgo/internal/testso	2.237s
ok  	cmd/cgo/internal/teststdio	2.219s
ok  	cmd/cgo/internal/testtls	0.003s
ok  	cmd/compile/internal/abt	0.008s
ok  	cmd/compile/internal/amd64	8.379s
ok  	cmd/compile/internal/base	0.042s
ok  	cmd/compile/internal/compare	0.006s
ok  	cmd/compile/internal/dwarfgen	0.683s
ok  	cmd/compile/internal/importer	3.728s
ok  	cmd/compile/internal/inline/inlheur	1.585s
ok  	cmd/compile/internal/ir	0.051s
ok  	cmd/compile/internal/logopt	1.312s
ok  	cmd/compile/internal/loopvar	62.716s
ok  	cmd/compile/internal/noder	0.070s
ok  	cmd/compile/internal/reflectdata	0.090s [no tests to run]
ok  	cmd/compile/internal/ssa	61.039s
ok  	cmd/compile/internal/syntax	0.045s
ok  	cmd/compile/internal/test	10.264s
ok  	cmd/compile/internal/typecheck	0.557s
ok  	cmd/compile/internal/types	0.002s
ok  	cmd/compile/internal/types2	8.581s
ok  	cmd/covdata	0.005s
ok  	cmd/cover	2.364s
ok  	cmd/dist	0.010s
ok  	cmd/distpack	0.010s
ok  	cmd/doc	0.319s
ok  	cmd/fix	3.432s
ok  	cmd/go	62.222s
ok  	cmd/go/internal/auth	0.009s
ok  	cmd/go/internal/cache	0.052s
ok  	cmd/go/internal/cfg	0.008s [no tests to run]
ok  	cmd/go/internal/envcmd	0.033s
ok  	cmd/go/internal/fsys	0.028s
ok  	cmd/go/internal/generate	0.017s
ok  	cmd/go/internal/gover	0.012s
ok  	cmd/go/internal/imports	0.026s
ok  	cmd/go/internal/load	0.007s
ok  	cmd/go/internal/lockedfile	0.208s
ok  	cmd/go/internal/lockedfile/internal/filelock	0.056s
ok  	cmd/go/internal/modfetch	0.027s
ok  	cmd/go/internal/modfetch/codehost	1.963s
ok  	cmd/go/internal/modfetch/zip_sum_test	0.101s
ok  	cmd/go/internal/modindex	0.236s
ok  	cmd/go/internal/modload	0.035s
ok  	cmd/go/internal/mvs	0.036s
ok  	cmd/go/internal/par	0.035s
ok  	cmd/go/internal/str	0.015s
ok  	cmd/go/internal/test	0.061s
ok  	cmd/go/internal/toolchain	0.010s
ok  	cmd/go/internal/vcs	0.073s
ok  	cmd/go/internal/vcweb	0.084s
ok  	cmd/go/internal/vcweb/vcstest	14.141s
ok  	cmd/go/internal/web	0.009s
ok  	cmd/go/internal/work	0.245s
ok  	cmd/gofmt	0.106s
ok  	cmd/internal/archive	2.469s
ok  	cmd/internal/bootstrap_test	0.080s
ok  	cmd/internal/buildid	0.647s
ok  	cmd/internal/cov	1.248s
ok  	cmd/internal/dwarf	0.023s
ok  	cmd/internal/edit	0.027s
ok  	cmd/internal/goobj	0.042s
ok  	cmd/internal/moddeps	4.042s
ok  	cmd/internal/notsha256	0.048s
ok  	cmd/internal/obj	1.470s
ok  	cmd/internal/obj/ppc64	0.651s
ok  	cmd/internal/obj/riscv	0.253s
ok  	cmd/internal/obj/s390x	0.008s
ok  	cmd/internal/obj/x86	0.828s
ok  	cmd/internal/objabi	0.248s
ok  	cmd/internal/pkgpath	0.165s
ok  	cmd/internal/pkgpattern	0.073s
ok  	cmd/internal/quoted	0.108s
ok  	cmd/internal/src	0.062s
ok  	cmd/internal/test2json	0.419s
ok  	cmd/link	15.497s
ok  	cmd/link/internal/benchmark	0.064s
ok  	cmd/link/internal/ld	17.180s
ok  	cmd/link/internal/loader	0.286s
ok  	cmd/nm	5.424s
ok  	cmd/objdump	7.630s
ok  	cmd/pack	3.099s
ok  	cmd/pprof	1.877s
ok  	cmd/trace	0.369s
ok  	cmd/vet	8.270s
No support for static linking found (lacks libc.a?), skip cgo static linking test.
No support for static linking found (lacks libc.a?), skip cgo static linking test.
No support for static linking found (lacks libc.a?), skip cgo static linking test.
No support for static linking found (lacks libc.a?), skip cgo static linking test.
No support for static linking found (lacks libc.a?), skip cgo static linking test.

##### os/user with tag osusergo
ok  	os/user	0.003s

##### hash/maphash purego implementation
ok  	hash/maphash	0.046s

##### GOMAXPROCS=2 runtime -cpu=1,2,4 -quick
ok  	runtime	18.618s

##### Testing without libgcc.
ok  	net	0.008s
ok  	os/user	0.022s

##### internal linking of -buildmode=pie
ok  	reflect	0.150s
ok  	os/user	0.006s

##### sync -cpu=10
ok  	sync	0.963s

##### Testing race detector
ok  	runtime/race	5.586s
ok  	flag	1.022s
ok  	net	1.097s
ok  	os	1.098s
ok  	os/exec	2.031s
ok  	encoding/gob	1.034s
ok  	flag	1.034s
ok  	os/exec	2.025s

##### Testing cgo
ok  	cmd/cgo/internal/test	1.096s
ok  	cmd/cgo/internal/test	0.764s
ok  	cmd/cgo/internal/testtls	0.007s
ok  	cmd/cgo/internal/test	0.742s
ok  	cmd/cgo/internal/test	0.741s
ok  	cmd/cgo/internal/testtls	0.002s
ok  	cmd/cgo/internal/testnocgo	0.002s

##### ../test
ok  	cmd/internal/testdir	84.424s

##### API check
ok  	cmd/api	40.247s

ALL TESTS PASSED
---
Installed Go for linux/amd64 in /home/olej/goroot
Installed commands in /home/olej/goroot/bin
*** You need to add /home/olej/goroot/bin to your PATH.

real	8m6,058s
user	38m30,453s
sys	5m17,937s
real 8m6,058s

Ответить

Вернуться в «Программирование»

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и 7 гостей