생계유지형 개발자/Stack Over Flow 한국판

[NodeJS] Error: Node Sass does not yet support your current environment:

이 가을 2021. 1. 11. 13:54

# 오류

Vue 개발을 위해 프로젝트를 실행했는데 제목과 같은 에러가 아래처럼 발생했다.

Syntax Error: Error: Node Sass does not yet support your current environment: OS X 64-bit with Unsupported runtime (88)

아무래도 최근에 iOS 개발하면서 NodeJS(노드) 버전을 최신 버전으로 업데이트한게 원인이 아닐까 싶었다.

검색을 해보니 이 오류에 대해서 명쾌하게 설명을 잘 해놓은 블로그 글이 있어서 쉽게 해결할 수 있었다.

 

# 원인

간단하게 노드 버전과 설치된 node-sass 모듈 버전이 상호 지원하지 않는 버전이기 때문이다.

내 컴퓨터에 설치된 노드와 vue프로젝트에 설치된 node-sass의 버전은 다음과 같다.

- NodeJS: 15.5.1

- node-sass: 4.14.1

 

그리고 아래는 node-sass 가이드(링크)에 나온 지원버전 표이다.

NodeJS 버전 별 node-sass 지원 버전 [출처] https://www.npmjs.com/package/node-sass   

내가 사용해야 하는 모듈 버전은 5.0 이상인데 현재 4.14.x가 설치되어 있으므로 오류가 발생한다.

 

# 해결

node-sass를 삭제 후 새로 설치하는 방법이 깔끔하다.

# 4.14.x 구 버전 설치되어 있음
$ npm list | grep node-sass
├── node-sass@4.14.1

# node-sass 삭제 후 새로 설치
$ npm uninstall node-sass
$ npm install --save node-sass

# 5.0.0 최신버전 설치 확인
$ npm list | grep node-sass
├── node-sass@5.0.0

 

※ 참고

[참고 1]

이러한 오류가 왜 발생하는지 부터 node-sass가 구체적으로 무엇인지, 어떤 원리와 구성으로 동작하는지를 잘 설명한 게시글을 참고했다.
대충 제공되는 UI Framework에서 제공되거나 인터넷에 나온 웹팩설정 따라 설치해서 node-sass가 정확히 뭘 하는지 모르고, 알고 싶은 사람은 처음부터 한자한자 읽어보면 좋을 것 같다.
https://jeonghwan-kim.github.io/dev/2020/06/27/node-sass.html

 

node-sass가 노드 버전에 의존적이 이유

스타일시트 전처리 언어인 sass를 사용하는데 노드 환경에서는 node-sass를 이용해 css 코드로 변환한다. 전처리 언어 중 less를 먼저 사용했는데 점차 sass를 사용하는 분위기였다. c언어 구현체가 있

jeonghwan-kim.github.io

[참고 2]

node-sass 재설치 후 실행했는데 또 다시 아래와 같은 오류가 난다면 다음 게시글을 확인하기 바란다.

Node Sass version 5.0.0 is incompatible with ^4.0.0.

http://jolly-sally.tistory.com/44

 

[NodeJS] Node Sass version 5.0.0 is incompatible with ^4.0.0.

이전에 Vue 프로젝트 실행할 때 NodeJS 15 버전과 node-sass 4.14.1 버전이 호환하지 않아서 오류가 발생했었고, node-sass를 호환 버전인 5.0.0으로 설치함으로써 해결했다. 이제 잘 되나 싶었는데 또 다른

jolly-sally.tistory.com