programing

exec: "gcc": 빌드로 이동할 때 %PATH%에서 실행 파일을 찾을 수 없습니다.

lastmemo 2023. 5. 11. 23:55
반응형

exec: "gcc": 빌드로 이동할 때 %PATH%에서 실행 파일을 찾을 수 없습니다.

Windows 10을 사용하고 있습니다.Chaincode를 구축하려고 했을 때 이 오류가 보고되었습니다.

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

체인 코드 가져오기:

import (
    "fmt"
    "strconv"

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

도커에서 잘 운영되고 있습니다.

gcc(GNU 컴파일러 모음)는 C 컴파일러를 제공합니다.윈도우즈에서는 TDM-GCC를 설치합니다.패키지는 cgo를 사용합니다.Cgo는 C 코드를 호출하는 Go 패키지를 만들 수 있습니다.

Ubuntu를 실행하는 경우 다음을 수행합니다.

apt-get install build-essential

이것으로 문제가 해결되었습니다.gcc/g++ 컴파일러와 라이브러리를 설치합니다.

제 가 있었습니다.gcc.exe초코를 사용해서 설치했습니다.mingw그리고 효과가 있었습니다.

세부사항:

  1. 다운로드 초코
  2. choco install mingw -y
  3. 확인:gcc -v

».exe> https://sourceforge.net/projects/mingw-w64/ 에서

1.2) 사용! 사용x86_64

추가C:\Program Files\mingw-w64\x86_64-8.1.0-posix-seh-rt_v6-rev0\mingw64\binPATHUser Variables 그고리로.System Variables저한테는 효과가 있어요.

Path가변 프레스Windows하고 'path한 후 ' system environment variables'를하고 ' Variables'를한 후 찾기를 클릭합니다.Path에 있어서 가변적인.System variables 그고리로.User variables편집합니다.

도커 파일과 함께 알파인 기반 이미지를 사용하는 경우

를 설치합니다.build-base당신의 요구 사항을 충족시킬 것입니다.

apk add build-base

Windows에서는 http://tdm-gcc.tdragon.net/download, 을 설치합니다.

$ go env

CGO_ENABLED1이면 0으로 변경되는지 확인합니다.

$export CGO_ENABLED=0 

나의 경우: os: windows 10

명령:

choco install mingw

설치되지 않은 경우 choco 설치:링크: https://www.liquidweb.com/kb/how-to-install-chocolatey-on-windows/

저를 위해 일했습니다.

윈도우즈 환경에서 하이퍼레저에 대해 go build가 작동하지 않는 이유에 대한 적절한 설명이 다른 답변으로 제공됩니다.컴파일 목적으로 추가 설치 없이 작동하려면 다음을 시도할 수 있습니다.

go build --tags nopkcs11

그것은 나에게 효과가 있었다.저는 당신에게도 같은 것이 효과가 있기를 바랍니다.

시도해 볼 수 있습니다. 이것은 해결책이 아니라 임시 해결책입니다.

cgo_enabled=0 go build 

gcc를 설치하고 %PATH에서 찾을 수 있는 방법(gcc.exe)이 있는지 확인하면 이는 사라집니다.

또한 이를 실행하면 터미널이 열려 있는 동안 cgo_enabled 변수가 이 방식으로 유지됩니다.이렇게 하면 빌드할 때마다 접두사를 붙일 필요가 없습니다.

export cgo_enabled=0 go build 

그냥 팔로우의 지시를 따랐고 그것은 내 문제를 해결했습니다.

https://code.visualstudio.com/docs/cpp/config-mingw

MSYS2를 통해 Mingw-w64를 설치하도록 요청합니다.

중요한 명령은pacman -S --needed base-devel mingw-w64-x86_64-toolchain그 다음에 추가C:\msys64\mingw64\bin로.PATH

감사해요.

Ubuntu의 경우 다음과 같이 간단히 실행할 수 있었습니다.

sudo apt 설치 gcc

Amazon Linux 2의 경우:

  1. 설치 바둑

    wget https://go.dev/dl/go1.18.1.linux-dll64.tar.gz

    rm -rf /usr/local/go &&tar -C /usr/local -xzfgo 1.18.1.linux-amd64.tar.gz

    PATH=$PATH 내보내기:/usr/local/go/bin

  2. gcc 설치

    sudoyum 그룹 설치 "개발 도구"

패키지 그룹을 사용하는 것이 좋습니다. 패키지 그룹 없이도 할 수 있습니다. 그룹 설치는 아마존 리눅스와 Redhat, CentOS에서 소프트웨어를 컴파일하는 데 필요한 패키지를 제공하기 때문입니다.

Ubuntu에서는 매우 쉽지만 Windows에서는 다음 작업을 수행해야 합니다.

  1. http://www.mingw.org/ 에서 MinGW를 다운로드합니다.
  2. 기본 패키지에 설치 Gcc-g++( 이미지 참조)
  3. add on 환경 창 변수의 패치입니다.
  4. 다시 시작하고 "Go get..."으로 계속합니다."

Ubuntu를 실행하는 경우 다음을 수행합니다.

sudo apt-get update
sudo apt-get install build-essential.

위의 명령이 작동하지 않으면 다음을 수행합니다.

sudo add-apt-repository "deb http://archive.ubuntu.com/ubuntu $(lsb_release -sc) main universe"

기본 구성 요소에는 무료 소프트웨어이며 자유롭게 재배포할 수 있으며 Ubuntu 팀에서 완전히 지원하는 응용 프로그램이 포함되어 있습니다.Universe 구성 요소는 자유, 오픈 소스 및 Linux 세계의 스냅샷입니다.

그런 다음 터미널에서 다음 명령을 사용하여 패키지를 설치합니다.

sudo apt-get update
sudo apt-get install build-essential.

자세한 내용은 여기를 클릭하십시오. https://itectec.com/ubuntu/ubuntu-problem-installing-build-essential-on-14-04-1-lts-duplicate/

여기에 추가하기만 하면 됩니다.Dockerfile

RUN apk add alpine-sdk

윈도우가 아닌 플랫폼에 대해 크로스 컴파일을 하거나 cgo를 사용하지 않는 한 gcc는 필요하지 않습니다.그래도 gcc가 필요하다면 Windows용 gcc 포트를 제공하는 MinGW를 설치해야 합니다(실제로 테스트한 적은 없지만 Cygwin과 msys도 작동해야 합니다).

편집: 오류 메시지를 보니 gcc가 필요한 종속성인 것 같습니다.만약 당신이 이것을 아직 몰랐다면, gcc는 c/c++ 컴파일러이고, 이 경우에는 아마도 종속성 또는 하위 종속성에 의해 포함된 c 소스 파일을 컴파일해야 할 것입니다.

MSYS2에서 "exec: "gcc": 실행 파일을 %PATH%에서 찾을없음" 오류를 해결하는 방법:

  • MSYS2를 다운로드합니다.
  • MSYS2 폴더를 $PATH에 넣습니다.
  • MSYS2 명령줄 프로그램을 시작합니다.
  • 다음 명령을 실행합니다.

GUI가 자동으로 실행된 후 MINGW를 설치하십시오.

http://mingw.org/wiki/Getting_Started

Windows에서는 Spoke를 사용하여 gcc를 설치할 수 있습니다.

scoop install gcc
  1. MingGW64를 다운로드해야 합니다.
  2. MingGW64 폴더를 $PATH에 넣습니다.
  3. go build xxx.go(cgo 라이브러리 포함)를 실행합니다.

안녕 jaswanth 주요 문제는 당신이 %GO_를 등록하지 않았다는 것입니다.HOME%\pkg\tool\windows_amd64 to your Environment Path. %GO_HOME%는 처음에 바둑을 설치하는 저장소입니다.

다른 것과 마찬가지로 tdm-gcc를 설치하면 되지만 터미널인 "MinGW"를 사용할 수 있습니다. 시작 후 시작 메뉴 폴더 tdm-gcc에서 액세스하여 프로젝트를 찾은 후 다시 실행할 수 있습니다.

Windows 사용자이며 아래 링크에서 tdm-gcc(MinGW-w64 기반)를 다운로드했습니다.

https://jmeubank.github.io/tdm-gcc/

설치 후, 그것은 "TDM-GCC-64"라는 이름의 폴더를 만들었습니다.

"C:\TDM-GCC-64\bin"을 PATH에 추가하여 문제를 해결했습니다.

언급URL : https://stackoverflow.com/questions/43580131/exec-gcc-executable-file-not-found-in-path-when-trying-go-build

반응형