node-gyp은 개발자가 여러 플랫폼에서 기본 Node 추가 기능 모듈을 컴파일할 수 있게 해주는 멋진 도구입니다. 오늘날 매우 인기 있고 널리 사용되므로 대부분의 NPM 패키지에 대한 종속성으로 포함되는 경우가 많습니다.
대부분의 운영 체제에서 node-gyp은 문제를 일으키지 않습니다. node-gyp 및 나머지 NPM 패키지 설치는 일반적으로 원활하고 효율적으로 작동합니다. 그러나 이것은 모든 사용자에게 해당되는 것은 아닙니다. 일부 개발자는 macOS에서 node-gyp을 재구축하는 데 문제가 있어 영향을 받는 개발자에게 좋지 않은 경험을 했다고 보고했습니다. 이 오류는 또한 수많은 함정으로 이어지며 일이 잘못될 수 있는 많은 방법을 허용합니다.
이 문제는 새로운 것이 아닙니다. 이전 버전의 macOS를 사용하는 개발자는 이전에 이 오류를 경험한 적이 있습니다. macOS Catalina가 출시되면서 여러 개발자가 새 macOS 버전으로 업그레이드한 후 Mac에서 node-gyp 재구축이 실패한다고 보고했습니다. 이 오류로 인해 개발자는 필요한 node-gyp 패키지를 설치할 수 없습니다.
이 오류가 발생했다면 Mac에서 node-gyp 재구축 실패가 얼마나 실망스러운지 이해할 수 있을 것입니다. 이 오류를 수정하지 않으면 앱이나 소프트웨어 개발을 진행할 수 없습니다. 다행히도 모든 작업을 완료했습니다. 이 오류로 인해 프로젝트를 진행할 수 없는 경우 아래 나열된 해결 방법 중 하나를 시도하여 문제를 해결할 수 있습니다.
전문가 팁:Mac에서 성능 문제, 정크 파일, 유해한 앱 및 보안 위협을 검사하십시오.
시스템 문제를 일으키거나 성능을 저하시킬 수 있습니다.
노드 집이란 무엇입니까?
node-gyp은 C 또는 C++로 작성된 기본 Node.js 모듈인 Node.js 애드온을 컴파일하는 데 사용되는 도구입니다. 이러한 모듈은 node-gyp과 같은 도구를 사용하여 컴퓨터에서 컴파일해야 합니다. Node-gyp은 Windows, macOS 및 Linux에서 작동합니다.
Node-gyp은 일관된 인터페이스로 인해 일반적으로 사용하기 쉽습니다. 동일한 명령을 사용하여 다른 플랫폼에서 모듈을 빌드하거나 다시 빌드할 수도 있습니다. Node-gyp은 Node의 여러 대상 버전도 지원합니다.
Mojave 또는 이전 버전의 macOS에서 npm gyp 오류가 발생하면 node-gyp이 작동하기 위한 요구 사항을 다시 확인해야 합니다.
다음은 macOS에서 node-gyp이 작동하기 위해 설치해야 하는 요구 사항입니다.
- 파이썬 v2.7, v3.5, v3.6 또는 v3.7
- Xcode – 개발자가 macOS, iOS 및 iPadOS에서 앱을 만들 수 있게 해주는 유틸리티입니다.
또한 XCode의 소프트웨어 개발 도구 및 라이브러리 제품군의 일부인 올바른 버전의 Xcode 명령줄 도구를 설치해야 합니다.
Xcode 명령줄 도구를 설치하려면 아래 지침을 따르세요.
- Xcode 시작 Mac에서.
- 환경설정 선택 Xcode 메뉴에서.
- 일반 패널에서 다운로드를 클릭합니다. .
- 다운로드 창이 열리면 구성요소 탭.
- 설치 를 클릭합니다. 명령줄 도구 옆에 있는 버튼
- Apple 개발자 계정을 사용하여 로그인하여 설치 프로세스를 완료합니다.
macOS Catalina를 실행 중인 경우 여기에서 사용 중인 Catalina 버전에 적합한 Xcode용 명령줄 도구 버전을 다운로드할 수 있습니다. macOS 10.15.3의 경우 파일 이름은 Command_Line_Tools_for_Xcode_11.3.1.dmg여야 합니다. . 올바른 구성 요소를 설치했으면 node-gyp을 사용하여 성공적으로 빌드할 수 있습니다. Mac에서 node-gyp 재구축에 실패하면 이러한 구성 요소를 검토하여 무엇이 잘못되었는지 알아내야 합니다.
Node-gyp 재구축 오류를 해결하는 방법
노드 모듈을 설치하는 것은 쉬운 과정입니다. 특정 명령을 실행하기만 하면 됩니다. Mac에서 node-gyp 재구축 실패가 발생하면 뒤로 물러나서 무슨 일이 일어났는지 알아내야 합니다.
하지만 그 전에 시도해야 할 몇 가지 기본적인 문제해결 단계가 있습니다.
- 시스템에 영향을 줄 수 있는 일시적인 버그를 제거하려면 컴퓨터를 다시 시작하세요.
- 불필요한 앱을 모두 닫아 컴퓨터 리소스를 확보하십시오.
- 바이러스 백신 또는 맬웨어 방지 프로그램과 같은 보안 소프트웨어를 일시적으로 비활성화합니다.
- Mac 수리 앱을 사용하여 시스템 정리 .
여전히 node-gyp 재구축 오류가 발생하면 아래 솔루션을 살펴보고 어떤 솔루션이 적합한지 확인하세요.
수정 #1:필수 구성 요소를 다시 확인하십시오.
Mojave 또는 다른 macOS 버전에서 npm gyp 오류가 발생했을 때 가장 먼저 해야 할 일은 node-gyp의 설치 요구 사항을 다시 확인하는 것입니다. 위의 섹션에서 언급했듯이 작동하려면 다음과 같은 세 가지 구성 요소가 필요합니다.
- 파이썬
- Xcode
- Xcode 명령줄 도구
모듈을 컴파일하는 데 필요한 C 및 C++ 언어를 설치하는 것을 잊지 마십시오. 이 중 하나라도 없거나 작동하지 않으면 재구축 실패 오류가 발생합니다. 누락되거나 결함이 있는 구성 요소를 다시 설치하면 문제를 해결하는 데 도움이 됩니다.
수정 #2:Node-Gyp 구성요소 업데이트
때때로 이러한 구성 요소를 설치하는 것만으로는 충분하지 않습니다. macOS에 올바른 버전을 사용하고 있는지 확인해야 합니다. 적합한 버전에 따라 Python v2.7, v3.5, v3.6 또는 v3.7 중에서 선택할 수 있습니다. Xcode의 경우 이 링크에서 다운로드할 수 있습니다. 만일을 대비하여 최신 버전의 node-gyp도 설치해야 합니다.
수정 #3:산성 테스트 수행
컴퓨터에 Xcode 명령줄 도구가 제대로 설치되어 있고 node-gyp에서 작동하는지 확인할 수 있습니다. 다음 단계에 따라 산성 테스트를 실행할 수 있습니다.
- Xcode에서 다음 명령을 실행합니다.
/usr/sbin/pkgutil –패키지 | grep CL - com.apple.pkg.CLTools_Executables가 표시되는 경우 나열된 대로 문제가 발생하지 않습니다. 그렇지 않은 경우 이 테스트가 실패한 것이므로 다시 설치해야 합니다.
- 다음 명령을 실행합니다.
/usr/sbin/pkgutil –pkg-info com.apple.pkg.CLTools_Executables - 버전:11.0.0이 표시되어야 합니다. (또는 이후) 나열된 대로. 그렇지 않은 경우 이 테스트도 실패했으며 다시 설치해야 합니다.
수정 #4:다른 Python 버전으로 전환합니다.
영향을 받는 많은 개발자는 활성 환경에 사용되는 Python 버전을 변경하면 문제를 해결하는 데 도움이 된다고 언급했습니다. 이것은 macOS 버전, Node 버전 및 사용 중인 Python 버전 간의 호환성과 관련이 있습니다. 일부 사용자는 v2.7과 같은 이전 버전의 Python이 최신 버전보다 더 안정적이라는 것을 발견했습니다. 다양한 버전으로 실험하고 어떤 버전이 적합한지 확인하세요.
요약
Mac에서 node-gyp 재구축에 실패하는 것은 번거로울 수 있으며 무엇이 잘못되었는지 파악하는 것은 엄청난 시간 낭비가 될 수 있습니다. 따라서 이 오류가 발생하면 위의 가이드를 참조하여 오류를 수정하기 위해 수행할 작업을 정확히 알 수 있습니다.