我试图在运行Ubuntu12.04的Beaglebone上运行Node库https://github.com/rwldrn/johnny-five。但是,每当我尝试运行示例程序(servo.js或其他任何其他程序)时,控制台就会发出:
/home/rov/node_modules/johnny-five/node_modules/firmata/node_modules/serialport/node_modules/bindings/bindings.js:91
throw err
^
Error: Could not locate the bindings file. Tried:
→ /home/rov/node_modules/johnny-five/node_modules/firmata/node_modules/serialport/build/serialport.node
→ /home/rov/node_modules/johnny-five/node_modules/firmata/node_modules/serialport/build/Debug/serialport.node
→ /home/rov/node_modules/johnny-five/node_modules/firmata/node_modules/serialport/build/Release/serialport.node
→ /home/rov/node_modules/johnny-five/node_modules/firmata/node_modules/serialport/out/Debug/serialport.node
→ /home/rov/node_modules/johnny-five/node_modules/firmata/node_modules/serialport/Debug/serialport.node
→ /home/rov/node_modules/johnny-five/node_modules/firmata/node_modules/serialport/out/Release/serialport.node
→ /home/rov/node_modules/johnny-five/node_modules/firmata/node_modules/serialport/Release/serialport.node
→ /home/rov/node_modules/johnny-five/node_modules/firmata/node_modules/serialport/build/default/serialport.node
→ /home/rov/node_modules/johnny-five/node_modules/firmata/node_modules/serialport/compiled/0.8.15/linux/arm/serialport.node
at bindings (/home/rov/node_modules/johnny-five/node_modules/firmata/node_modules/serialport/node_modules/bindings/bindings.js:88:9)
at Object.<anonymous> (/home/rov/node_modules/johnny-five/node_modules/firmata/node_modules/serialport/serialport.js:7:44)
at Module._compile (module.js:449:26)
at Object.Module._extensions..js (module.js:467:10)
at Module.load (module.js:356:32)
at Function.Module._load (module.js:312:12)
at Module.require (module.js:362:17)
at require (module.js:378:17)
at Object.<anonymous> (/home/rov/node_modules/johnny-five/node_modules/firmata/lib/firmata.js:9:18)
at Module._compile (module.js:449:26)我尝试过通过npm (npm安装序列化)安装序列化端口,但仍然会遇到相同的错误。如何安装序列化端口,以便servo.js文件能够识别它?
发布于 2013-07-02 07:45:00
serialport是johnny-five和firmata的依赖关系,但是由于firmata本身是johnny-five的依赖项,我相信firmata会从johnny/node_模块中引用serialport。
还请注意, requires Python 2.x。
如果npm正确安装了serialport.node,它应该将johnny-five/node_modules/serialport/build/Release内置到johnny-five中--您看到了吗?
如果没有,请在新目录中尝试此方法。
$ git clone https://github.com/rwldrn/johnny-five$ cd johnny-five$ npm install成功了吗?将/home/rov/node_modules/johnny-five替换为您刚刚构建的克隆回购。
https://stackoverflow.com/questions/16158735
复制相似问题