node-serialportで起きたinvalid ELF headerエラーの対処法
node-serialportは、node.jsでシリアル通信ができるライブラリです。
voodootikigod/node-serialport · GitHub
node-serialportライブラリを使ったプログラムをgit cloneして実行しようとしたところ、エラーがでたのでその対処方法を忘備録として残りておきます。
エラー
$ node app.js /home/username/demo_program/node_modules/serialport/node_modules/bindings/bindings.js:83 throw e ^ Error: /home/username/demo_program node_modules/serialport/build/Release/serialport.node: invalid ELF header at Module.load (module.js:356:32) at Function.Module._load (module.js:312:12) at Module.require (module.js:364:17) at require (module.js:380:17) at bindings (/home/username/demo_program/ node_modules/serialport/node_modules/bindings/bindings.js:76:44) at Object.<anonymous> (/home/username/demo_program/ /node_modules/serialport/serialport.js:7:44) at Module._compile (module.js:456:26) at Object.Module._extensions..js (module.js:474:10) at Module.load (module.js:356:32) at Function.Module._load (module.js:312:12)
対処法
以下のように一度serialportをuninstallしてinstallしたら解決しました。
$ npm uninstall serialport $ npm install serialport