不能使用npm安装的软件包

编辑:将〜/ npm / bin添加到PATH = $ PATH的path:〜/ npm / bin帮助,谢谢Joachim Isaksson

编辑:

好像我不能用npm安装任何软件包。 成功安装后,我不能使用它们与包中分配的命令。 “没有命令”“find”。

node -v v0.11.14 npm -v 2.0.0 

在Ubuntu的机器上

看来我不能安装resume-cli模块,在这里find使用npm。 即使安装没有错误,安装后也不理解基本命令。 这是警告的问题,显示在下面?

 sudo npm install -g resume-cli 

我明白了

  npm WARN engine html-to-text@0.0.8: wanted: {"node":"~0.8.0"} (current: {"node":"0.10.32","npm":"1.4.28"}) 

然后

 /home/bjornasm/npm/bin/resume -> /home/bjornasm/npm/lib/node_modules/resume-cli/index.js resume-cli@0.3.10 /home/bjornasm/npm/lib/node_modules/resume-cli ├── cli-spinner@0.1.5 ├── char-spinner@1.0.1 ├── commander@2.3.0 ├── colors@0.6.2 ├── open@0.0.5 ├── chalk@0.4.0 (has-color@0.1.7, ansi-styles@1.0.0, strip-ansi@0.1.1) ├── async@0.9.0 ├── read@1.0.5 (mute-stream@0.0.4) ├── terminal-menu@0.3.2 (inherits@2.0.1, charm@0.1.2, resumer@0.0.0) ├── superagent@0.18.2 (extend@1.2.1, qs@0.6.6, methods@1.0.1, cookiejar@2.0.1, component-emitter@1.1.2, reduce-component@1.0.1, mime@1.2.11, debug@1.0.4, readable-stream@1.0.27-1, form-data@0.1.3, formidable@1.0.14) ├── resume-to-text@0.0.15 (mustache@0.8.2, html-to-text@0.0.8) ├── resume-to-html@0.0.21 (gravatar@1.0.6, resume-to-markdown@0.0.14, marked@0.3.2, mustache@0.8.2, lodash@2.4.1) ├── jsonlint@1.6.2 (nomnom@1.8.0, JSV@4.0.2) └── resume-schema@0.0.15 (z-schema@2.4.10) 

然后当运行以下

 resume --help 

我明白了

 resume: command not found 

任何人都熟悉这个?

以下是从源代码安装给定发行版的步骤注 – 这将安装nodejs,它既提供节点也提供npm,它们在每个发行版中一起提供。

开始新鲜删除之前的node.js和npm安装以及这些:

 sudo mv ~/.npmrc ~/.npmrc_ignore sudo mv ~/.npm ~/.npm_ignore sudo mv ~/tmp ~/tmp_ignore sudo mv ~/.npm-init.js ~/.npm-init.js_ignore 

安装nodejs和npm作为你自己不要root做这些命令(OSX / linux):

 export NODE_PARENT=${HOME}/bin_0_10_32 mkdir ${NODE_PARENT} 

http://nodejs.org/download/下载源代码

 cd node-v0.xxxx ./configure --prefix=${NODE_PARENT}/nodejs make -j8 make install # IMPORTANT this is NOT using sudo # not wanted since installing into $USER owned $NODE_PARENT 

把它放到上面定义的dir中–prefix

 export PATH=${NODE_PARENT}/nodejs/bin:$PATH 

定义环境variablesNODE_PATH,以便节点可以find模块的目录,否则npm install xxx会把新安装的模块放到当前目录中:

 export NODE_PATH=${NODE_PARENT}/nodejs/lib/node_modules 

当你使用语法:npm install -g some_cool_module -g for global将它安装到dir $ NODE_PATH而不是你的$ PWD

nodejs install也给你npm:

 ls -la ${NODE_PARENT}/nodejs/bin 

后续使用全局标志-g安装的模块将自动把它们的〜binaries〜放到bin目录的上面…比如browserify

现在把上面的三个export xxx = yyy命令放到你的〜/ .bashrc里面或者这样,你的环境就被设置了