Golang は、sqlite go build -ldflags のクロスコンパイルのエラー メッセージを記録します。

go build -ldflags '-s -w --extldflags “-static -fpic”' -o go-web main.go

[gos20230512]# CGO_ENABLED=1 
CC=aarch64-linux-gnu-gcc 
CXX=aarch64-linux-gnu-g++ 
GOOS=linux 
GOARCH=arm64 
go build -ldflags 
'-s -w --extldflags "-static -fpic"' 
-o go-web main.go
# runtime/cgo
_cgo_export.c:3:20: fatal error: stdlib.h: No such file or directory
 #include <stdlib.h>
                    ^
compilation terminated.

コマンドライン引数
/tmp/go-link-1199555067/000015.o: 関数 'unixDlOpen' 内:
/root/go/pkg/mod/github.com/mattn/[email protected]/sqlite3-binding .c:40175: 警告: 静的にリンクされたアプリケーションで 'dlopen' を使用するには、実行時にリンクに使用される glibc バージョンの共有ライブラリが必要です /tmp/go-link-1199555067/000004.o
: 関数 `_cgo_6c​​c2654a8ed3_C2func_getaddrinfo':
/tmp/ go-build/cgo-gcc-prolog:58: 警告: 静的にリンクされたアプリケーションで 'getaddrinfo' を使用するには、実行時にリンクに使用される glibc バージョンの共有ライブラリが必要です

# command-line-arguments
/tmp/go-link-1199555067/000015.o: In function `unixDlOpen':
/root/go/pkg/mod/github.com/mattn/[email protected]/sqlite3-binding.c:40175: warning: Using 'dlopen' in statically linked applications requires at runtime the shared libraries from the glibc version used for linking
/tmp/go-link-1199555067/000004.o: In function `_cgo_6cc2654a8ed3_C2func_getaddrinfo':
/tmp/go-build/cgo-gcc-prolog:58: warning: Using 'getaddrinfo' in statically linked applications requires at runtime the shared libraries from the glibc version used for linking

致命的なエラー: ランタイム実行中の予期しないシグナル
[シグナル SIGSEGV: セグメンテーション違反コード = 0x1 addr = 0x0 pc=0x0]

ランタイムスタック:
runtime.throw({0x97376c?, 0x0?})
/usr/lib/golang/src/runtime/panic.go:992 +0x71
runtime.sigpanic()
/usr/lib/golang/src/runtime/signal_unix .go:802 +0x389

goroutine 1 [syscall、スレッドにロック]:
runtime.cgocall(0x7fea80, 0xc000052bb8)
/usr/lib/golang/src/runtime/cgocall.go:157 +0x5c fp=0xc000052b90 sp=0xc000052b58 pc=0x40dbbc
crypto/internal/boring ._Cfunc__goboringcrypto_DLOPEN_OPENSSL()
_cgo_gotypes.go:619 +0x49 fp=0xc000052bb8 sp=0xc000052b90 pc=0x5208e9
crypto/internal/boring.init.0()
/usr/lib/golang/src/crypto/internal/boring/boring.go: 52 +0x45 fp=0xc000052bf0 sp=0xc000052bb8 pc=0x5283e5
runtime.doInit(0xfc7e80)
/usr/lib/golang/src/runtime/proc.go:6230 +0x126 fp=0xc000052d20 sp=0xc000052bf0 pc=0x4 4d866
ランタイム.doInit(0xfc6780 )
/usr/lib/golang/src/runtime/proc.go:6207 +0x71 fp=0xc000052e50 sp=0xc000052d20 pc=0x44d7b1
runtime.doInit(0xfc9f80)
/usr/lib/golang/src/runtime/proc.go:6207 +0x71 fp=0xc000052f80 sp=0xc000052e50 pc=0x44d7b1
runtime.main()
/usr/lib/golang/src/runtime/proc.go:233 +0x1d3 fp=0xc000052fe0 sp=0xc000052f80 pc=0x4408f3
runtime.goexit()
/usr/lib/golang/src/runtime/asm_amd64.s:1571 +0x1 fp=0xc000052fe8 sp=0xc000052fe0 pc=0x46d4a1

おすすめ

転載: blog.csdn.net/sunny_day_day/article/details/130651757