Editor PHP Xiaoxin di sini untuk memperkenalkan kepada anda masalah tentang ketidakupayaan untuk menentukan jenis nama C.getnameinfo dalam go semasa menjalankan go build. Dalam proses membina menggunakan bahasa go, kadangkala anda akan menghadapi masalah, iaitu jenis nama fungsi C.getnameinfo tidak dapat ditentukan. Isu ini boleh menyebabkan kegagalan binaan atau ralat kompilasi lain. Artikel ini akan memperkenalkan punca dan penyelesaian masalah ini secara terperinci, dengan harapan dapat membantu pembangun yang menghadapi masalah yang sama.
Jadi saya baru sahaja menaik taraf versi go saya kepada versi yang lebih tinggi go1.20.2 Sebelum ini saya menggunakan go1.18.x.
Saya telah mengemas kini laluan persekitaran go
<code>export GOPATH="$HOME/go"; export GOROOT="$HOME/.go"; export PATH="$GOPATH/bin:$PATH"; </code>
Jadi, setiap kali saya cuba membinanya selalu menunjukkan ralat ini
<code>/home/usr/.go/src/net/cgo_resnew.go:21:17: could not determine kind of name for C.getnameinfo </code>
Saya telah mencari jawapannya tetapi saya tidak mendapatnya dari internet. Adakah sesiapa tahu apa yang menyebabkan ralat ini?
Bila nak buat
<code>go build . </code>
Ia tidak sepatutnya menunjukkan ralat ini
/home/usr/.go/src/net/cgo_resnew.go:21:17: could not determine kind of name for C.getnameinfo
Gunakan arahan go env
检查 golang 环境中的 CGO_ENABLED
。如果您的值 CGO_ENABLED
为 1,则必须将值设置为 0。如果您使用 zsh,请在 ~/.bashrc 或 ~/.zshrc 上添加 export CGO_ENABLED=0
(Saya syorkan menambah pembolehubah persekitaran pada ~/.profile untuk tetapan global)
Atas ialah kandungan terperinci Tidak dapat menentukan jenis nama dalam C.getnameinfo in go apabila menjalankan go build. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!