我正在尝试在beaglebone(linux angstrom)上使用npm安装socket.io
/> npm install socket.io
它在旧版本的旧版本节点上运行良好。我现在正在使用节点v0.6.18。
当npm tring安装应该与socket.io一起安装的ws时似乎有问题
如果我尝试,我会收到同样的错误:
npm install ws --ws:verbose
结果如下:
root@beaglebone:~# npm install ws --ws:verbose
npm http GET https://registry.npmjs.org/ws
npm http 304 https://registry.npmjs.org/ws
npm http GET https://registry.npmjs.org/commander
npm http GET https://registry.npmjs.org/tinycolor
npm http GET https://registry.npmjs.org/options
npm http 304 https://registry.npmjs.org/commander
npm http 304 https://registry.npmjs.org/tinycolor
npm http 304 https://registry.npmjs.org/options
> ws@0.4.18 install /home/root/node_modules/ws
> node install.js
[ws v0.4.18] Attempting to compile blazing fast native extensions.
info it worked if it ends with ok
spawn python [ '/home/root/.node-gyp/0.6.18/tools/gyp_addon',
'binding.gyp',
'-I/home/root/node_modules/ws/build/config.gypi',
'-f',
'make' ]
Traceback (most recent call last):
File "/home/root/.node-gyp/0.6.18/tools/gyp_addon", line 14, in <module>
import gyp
File "/home/root/.node-gyp/0.6.18/tools/gyp/pylib/gyp/__init__.py", line 8, in <module>
import gyp.input
File "/home/root/.node-gyp/0.6.18/tools/gyp/pylib/gyp/input.py", line 5, in <module>
from compiler.ast import Const
ImportError: No module named compiler.ast
ERR! Error: `gyp_addon` failed with exit code: 1
at ChildProcess.onCpExit (/usr/lib/node_modules/npm/node_modules/node-gyp/lib/configure.js:226:16)
at ChildProcess.emit (events.js:70:17)
at maybeExit (child_process.js:362:16)
at Process.onexit (child_process.js:398:5)
ERR! not ok
[ws v0.4.18] Native extension compilation failed.
[ws v0.4.18] On Windows, native extensions require Visual Studio and Python.
[ws v0.4.18] On Unix, native extensions require Python, make and a C++ compiler.
[ws v0.4.18] Start npm with --ws:verbose to show compilation output (if any).
ws@0.4.18 ./node_modules/ws
├── tinycolor@0.0.1
├── options@0.0.3
└── commander@0.5.2
root@beaglebone:~#
我使用的是内核3.2.18
root@beaglebone:~# uname -a
Linux beaglebone 3.2.18 #1 Thu Jun 14 23:26:20 CEST 2012 armv7l GNU/Linux
root@beaglebone:~#
有什么想法吗?
答案 0 :(得分:2)
这不是一个真正的错误。原生扩展不是必需的 - 它恰好使得websockets更快,更快。
答案 1 :(得分:1)
我不知道,但我做了一次完整的升级,看看能不能找到任何东西,而我没有(一切正常)。我不得不重新发出两次命令(npm up -g
)以使其完成,我将其归因于上游服务器或网络问题。无论如何,这是我得到的工作正常(基本的Ubuntu 12.04 x64系统):
Linux marius-i7 3.2.0-25-generic #40-Ubuntu SMP Wed May 23 20:30:51 UTC 2012 x86_64 x86_64 x86_64 GNU/Linux
node -v: v0.6.19
ws@0.4.18
python --version: 2.7.3
npm install -g ws --ws:verbose
输出:
/usr/local/bin/wscat -> /usr/local/lib/node_modules/ws/bin/wscat
> ws@0.4.18 install /usr/local/lib/node_modules/ws
> node install.js
[ws v0.4.18] Attempting to compile blazing fast native extensions.
make: Entering directory `/usr/local/lib/node_modules/ws/build'
CXX(target) Release/obj.target/bufferutil/src/bufferutil.o
SOLINK_MODULE(target) Release/obj.target/bufferutil.node
SOLINK_MODULE(target) Release/obj.target/bufferutil.node: Finished
COPY Release/bufferutil.node
CXX(target) Release/obj.target/validation/src/validation.o
SOLINK_MODULE(target) Release/obj.target/validation.node
SOLINK_MODULE(target) Release/obj.target/validation.node: Finished
COPY Release/validation.node
make: Leaving directory `/usr/local/lib/node_modules/ws/build'
[ws v0.4.18] Native extension compilation successful!
tinycolor@0.0.1 /usr/local/lib/node_modules/ws/node_modules/tinycolor
options@0.0.3 /usr/local/lib/node_modules/ws/node_modules/options
commander@0.5.2 /usr/local/lib/node_modules/ws/node_modules/commander
ws@0.4.18 /usr/local/lib/node_modules/ws
我看到你在一个手臂系统上。对不起,我无法帮助你。