Saya menggunakan Windows 10. Ketika saya mencoba untuk membangun Chaincode hal ini melaporkan kesalahan ini
# github.com/hyperledger/fabric/vendor/github.com/miekg/pkcs11
exec: "gcc": executable file not found in %PATH%
Saya chaincode impor:
import (
"fmt"
"strconv"
"github.com/hyperledger/fabric/core/chaincode/shim"
pb "github.com/hyperledger/fabric/protos/peer"
)
It's berjalan baik-baik saja di Docker.
gcc (GNU Compiler Collection) menyediakan compiler C. Pada Windows, menginstal TDM-GCC. The github.com/miekg/pkcs11
paket menggunakan cgo. Cgo memungkinkan penciptaan Pergi paket yang memanggil kode C.
.exe
dari > https://sourceforge.net/projects/mingw-w64/1.2) ! gunakan x86_64
arsitektur
C:\Program File\mingw-w64\x86_64-8.1.0-posix-seh-rt_v6-rev0\mingw64\bin
untuk JALAN
di Variabel Pengguna
dan di Variabel Sistem
. Bagi saya itu bekerja. ! Untuk mengedit Path
variabel tekan tombol Windows
kunci, tipe 'jalan', pilih 'Edit sistem variabel lingkungan', klik 'Variabel Lingkungan', menemukan Jalan
variabel variabel Sistem
dan User ' variabel
kemudian edit.
Tepat penjelasan mengapa pergi membangun tidak bekerja untuk hyperledger di lingkungan Windows yang diberikan sebagai jawaban yang lain. Untuk penyusunan tujuan, hanya untuk membuatnya bekerja tanpa menginstal apa-apa tambahan, anda dapat mencoba hal berikut
go build --tags nopkcs11
Ini bekerja untuk saya. Saya berharap yang sama bekerja untuk anda juga.
Instruksi untuk memperbaiki "exec: "gcc": executable file tidak ditemukan dalam %PATH%" kesalahan dengan MSYS2:
pacman -S gcc
.Anda dapat mencoba - ini bukan solusi tapi temp solusi
cgo_enabled=0 go build
Setelah anda install gcc - dan pastikan %JALAN punya cara untuk menemukannya (gcc.exe) - ini harus pergi.
gcc seharusnya tidak perlu, kecuali anda adalah cross kompilasi untuk non-windows platform, atau gunakan cgo. Jika anda masih perlu gcc, namun, anda harus menginstal MinGW, yang menyediakan gcc port untuk Windows (Cygwin dan msys juga harus bekerja, meskipun saya tidak pernah benar-benar diuji ini).
Edit: saya lihat dari pesan error anda sekarang, bahwa itu adalah ketergantungan yang memerlukan gcc. Jika anda didn't sudah tahu ini, gcc adalah c/c++ compiler, dan dalam hal ini mungkin diperlukan untuk mengkompilasi c sumber termasuk file dengan ketergantungan atau sub-ketergantungan.