env: node: No such file or directory
mac catalina & mojave에서의 homebrew 문제 잦은 오류 발생(정확하지 않음)
지난 포스트에서 작성했던 것처럼, homebrew설치 및 제거로 인한 zsh권한 에러로 터미널을 2시간이나 넘게 붙잡고 있었다.
그러나 오늘은 과제 진행하는 도중 node.js관련 문제로 pair의 추천을 받아 다시 homebrew를 설치하였다. 설치 후 지난 포스트의 문제와 동일한 에러가 발생했지만 가볍게 해결해주고 node.js를 설치하였다.
문제가 터졌다. 또. 이젠 화도 안난다.
homebrew를 통한 node.js 설치 후 에러가 발생했다. 아래와 같이.
순간 나는 node.js를 잘못 설치한 줄 알고
재설치를 시도하였다.
node.js를 삭제하지 않고 바로 재설치를 한 것이라
사진에서 볼 수 있다시피 node 14.9.0 최신버전이 이미 설치가 되어있고,
단지 연결이 되어있지 않아있다는 메세지가 보인다.
'brew link node'
를 입력하면 위의 버전 node를 연결 할 수 있다는 친절한 안내도 나와있다.
뭐 한번에 될 리가 없지.
'brew link --overwrite node'
안내 메세지처럼 입력해보았다.
안된다.
기대도 안했다.
아무래도 이번에도 접근권한이 문제가 된 듯 하다.
A. 접근 권한을 변경
'$ sudo chmod 776 /usr/local/lib'
B. link
'$ brew link --overwrite node'
'Linking /usr/local/Cellar/node/14.9.0... 8 symlinks created'
이라는 문구가 보이고, 링크가 잘 설정되었는지 확인하기 위해 'brew link node'
로 확인해보니
짜잔!
링크가 잘되었다는 메세지가 보인다..ㅜㅜㅜㅜ
C. 마지막으로 1번에서 변경한 접근 권한을 재설정
'sudo chmod 755 /usr/local/lib'
참고) 755는 소유자만 모든 것(쓰기, 읽기, 실행)이 가능하고 그 외 사용자의 경우는 읽기, 실행은 가능하나 쓰기는 불가능하다고 보시면 됩니다.
오늘도 한 건 해결!
NVM은 Node Version Manager이다.
NVM을 통해 간단한 명령어로 node를 설치하고,
다양한 node version을 손쉽게 옮겨 다닐 수 있다.
NVM역시 하나의 프로그램이므로 설치해야 한다.
오늘 pair와 함께 Koans라는 과제를 진행하는 도중
어느 한 문제에서 pair는 테스트 통과가 되는 반면에
본인은 계속 통과가 되지 않는 문제가 발생했다.
도대체 무엇이 문제인지 둘이서 머리를 맞대며 고민하던 중
마침 문제가 원하는 답은 globalThis
라는 답인데
웹 상에서는 Window
로 뜰 것이고
node환경에서는 globalThis
라고 보여진다는 mdn의 설명에서
'node버젼의 차이 때문일 수도 있겠다'
힌트를 얻고 바로 서로의 node 버전을 비교해봤다.
아니나 다를까
내 node 버전은 10.xx.x였고,
pair의 버전은 14.9.0 최신버전이 설치가 되어있었다.
곧바로 노드 최신 버전을 설치한 후 버전을 nvm을 이용해 아래와 같이 변경해줬다.
$ nvm use
(사용하고 싶은 node version : use 명령어 전에 해당 node version이 설치되어있어야 한다.)
ex) nvm use 12.13.0
최신버전으로 변경하고 나니 통과되지 않던 문제가 해결됐다.
앞으로 프로젝트를 들어가거나 협업을 하게 된다면 꼭 node.js의 버전을 확인하는 건 꼭 필수일 듯 싶다.
진짜 끝!