nodeenv无法安装node.js.

时间:2015-10-29 19:32:51

标签: python node.js

在RedHat Enterprise 7上,尝试在Python虚拟环境(Python 2.7)中的nodeenv(0.13.6)内部安装node.js.当我nodeenv -p时,我会OSError: Command make --jobs=2 failed with error code 2 ...谷歌搜索,唯一的参考是here。对我来说不是很有用,因为我已经尝试安装最新版本的节点(4.2.1)。完整的这一点如下:

$ nodeenv -p
 * Install node (4.2.1..Traceback (most recent call last):
  File "/usr/local/pythonenvs/producer/bin/nodeenv", line 11, in <module>
    sys.exit(main())
  File "/usr/local/pythonenvs/producer/lib/python2.7/site-packages/nodeenv.py", line 891, in main
    create_environment(env_dir, opt)
  File "/usr/local/pythonenvs/producer/lib/python2.7/site-packages/nodeenv.py", line 732, in create_environment
    install_node(env_dir, src_dir, opt)
  File "/usr/local/pythonenvs/producer/lib/python2.7/site-packages/nodeenv.py", line 608, in install_node
    build_node_from_src(env_dir, src_dir, node_src_dir, opt)
  File "/usr/local/pythonenvs/producer/lib/python2.7/site-packages/nodeenv.py", line 577, in build_node_from_src
    callit([make_cmd] + make_opts, opt.verbose, True, node_src_dir, env)
  File "/usr/local/pythonenvs/producer/lib/python2.7/site-packages/nodeenv.py", line 461, in callit
    % (cmd_desc, proc.returncode))
OSError: Command make --jobs=2 failed with error code 2

然后我尝试使用此GitHub issue中的说明从预建中安装。

nodeenv -p --prebuilt

这似乎有用......

 * Install node (4.2.1... done.
 * Appending data to /usr/local/pythonenvs/producer/bin/activate

除了实际安装的任何内容之外 - 选项卡完成显示没有nodenpm安装(我已停用并重新激活虚拟环境):

$ no
nodeenv      nohup        nologin      notify-send
$ np
$ nproc

我的其他安装程序使用相同的说明,因此我无法进行调试。任何提示或建议?如果这是权限问题,我在哪里需要设置/更改它们?用户已拥有虚拟环境目录...

1 个答案:

答案 0 :(得分:1)

好的,所以我没有找到根本原因的解决方案(我怀疑我的服务器上有make的某种问题/冲突),但我设法通过--prebuilt安装了它。我必须从node.js手动删除/usr/local/pythonenvs/producer/src/node-v4.2.1/来源,因为--prebuilt选项试图复制这些来源,就好像它们是二进制文件一样。删除目录后,我从nodejs.org下载/解压缩到虚拟环境的src目录中。然后,nodeenv -p --prebuilt命令正常工作。