2017-04-24 43 views
7

Tôi đang sử dụng Windows 10. Khi tôi đã cố gắng để xây dựng Chaincode nó báo lỗi nàyexec: "gcc": tập tin thực thi không tìm thấy trong% PATH% khi cố gắng đi xây dựng

# github.com/hyperledger/fabric/vendor/github.com/miekg/pkcs11 
exec: "gcc": executable file not found in %PATH% 

chaincode nhập khẩu Mỹ:

import (
    "fmt" 
    "strconv" 

    "github.com/hyperledger/fabric/core/chaincode/shim" 
    pb "github.com/hyperledger/fabric/protos/peer" 
) 

Nó chạy tốt trong Docker.

+0

Vì vậy, câu hỏi của bạn là gì? – zerkms

+0

đi xây dựng lệnh cho các lỗi gcc ở trên ... làm thế nào tôi có thể giải quyết nó – jaswanth

+0

Bạn đã cài đặt 'gcc' chưa? – zerkms

Trả lời

6

gcc (Bộ sưu tập trình biên dịch GNU) cung cấp trình biên dịch C. Trên Windows, cài đặt TDM-GCC. Gói github.com/miekg/pkcs11 sử dụng cgo. Cgo cho phép tạo các gói Go gọi mã C.

+0

tq nó đã hoạt động nhưng gặp lỗi khác ngay bây giờ '. \ Hyperledger \ fabric \ vendor \ github.com \ miekg \ pkcs11 \ pkcs11.go: 29: 18: lỗi nghiêm trọng: ltdl.h: Không có tệp hoặc thư mục nào như vậy bị hủy bỏ. ' – jaswanth

+0

Tôi đã cài đặt [libtools] (http://gnuwin32.sourceforge.net/packages/libtool.htm) nhưng nó không hoạt động – jaswanth

0

gcc không cần thiết, trừ khi bạn đang biên dịch chéo cho nền tảng không phải cửa sổ hoặc sử dụng cgo. Nếu bạn vẫn cần gcc, tuy nhiên, bạn nên cài đặt MinGW, cung cấp cổng gcc cho Windows (Cygwin và msys cũng nên hoạt động, mặc dù tôi chưa bao giờ thực sự thử nghiệm điều này).

Chỉnh sửa: Tôi thấy từ thông báo lỗi của bạn ngay bây giờ, rằng đó là phụ thuộc yêu cầu gcc. Nếu bạn chưa biết điều này, gcc là trình biên dịch c/C++, và trong trường hợp này, có thể cần phải biên dịch các tệp nguồn c được bao gồm bởi một phụ thuộc hoặc phụ thuộc phụ.

1

Giải thích đúng lý do tại sao xây dựng không hoạt động cho hyperledger trong môi trường Windows được đưa ra như là câu trả lời khác. Đối với mục đích biên soạn của bạn, chỉ để làm cho nó làm việc mà không cài đặt bất cứ điều gì thêm, bạn có thể thử cách sau

go build --tags nopkcs11 

Nó làm việc cho tôi. Tôi hy vọng các công trình tương tự cho bạn.

0
  1. bạn cần phải tải MingGW64
  2. đặt thư mục MingGW64 vào $ PATH của bạn
  3. chạy đi xây dựng xxx.go (với thư viện CGO)
Các vấn đề liên quan