본문 바로가기

Linux

nodejs) node-bluetooth 설치오류 해결법

nodejs에서 npm으로 설치할수 있는 패키지중 node-bluetooth라는것이 있습니다.


한국어 관련된 자료 1도 없더군요. ㅁㄴㅇㄹ




일단 npm사이트에 나와있는 가이드(링크)대로 node-gyp와 libbluetooth-dev를 설치해줍시다.


$sudo apt-get install node-gyp


$sudo apt-get install libbluetooth-dev


그리고 본문에 나와있는대로 node-bluetooth 설치명령어를 입력해봅시다.


$npm install -g node-bluetooth --save


저는 여기에 추가적으로 -g명령어를 입력했는데 글로벌옵션입니다. 이 명령어가 없으면 bash가 실행되는 경로에서만 모듈을 사용할수 있습니다.


첨부 이미지


요런 에러가 나면서 설치가 되지 않습니다.


윈도우에선 >npm install windows-build-tools명령어를 입력해서 windows-build-tools만 깔아주면 되던데..


한참을 찾아댕겼습니다..(한 이틀동안..?) 문제는 bin파일 문제였습니다. (원문)


원문에서 아래쪽으로 내리다보면

Uhm you'll need to simlink /usr/bin/nodejs to /usr/bin/node, seems that the ubuntu guys decided to change the binary name....

이란 문구가 보입니다. (우분투가 잘못했네)


nodejs 바이너리 파일의 심볼릭 링크파일을 생성하기 위해서 아래 명령어를 입력해줍니다.


$sudo ln -s /usr/bin/nodejs /usr/bin/node


자, 다시 npm install -g node-bluetooth --save 명령어를 입력해서 설치해봅시다.


스샷은 첨부하기 귀찮으니.. 설치가 아무 이상없이 잘될것입니다.





위에 스크린샷같은 오류가 아닐경우 의존성 패키지들의 부재가 아닌지 확인해봅시다.


ex) $sudo apt-get install nodejs npm node-gyp gyp





p.s. 뭘 건드렸는지 모르겠는데 npm ls -depth=0 (-g)로 해서 나오는 모든 패키지 지웠다가 다시 npm install node-gyp하려하니

npm ERR! cb() never called!

npm ERR! not ok code 0

라는 에러만 나오고 설치는 안되는..