raspberryPi树莓派安装nodejs

树莓派安装nodejs

前提

  • 已通过ssh远程登陆树莓派;
  • 或者已通过vncViewer连接树莓派;
  • 自带显示屏的树莓派可忽视以上两点;

tips:

  • 开启管理员权限:
sudo passwd root

输入两次密码后,再解锁root账户:

sudo passwd --unlock root  

再切换到root管理员:

su root  
  • 文件权限不够:
    文件名对所有人添加读、写、执行权限。
chmod 777 fileName

安装

树莓派属于Linux系统,arm架构,通过命令:

$ uname -a

可知道树莓派的cpu架构,在我的树莓派上现实的信息可知是armv7:

$ Linux raspberrypi 4.9.35-v7+ #1014 SMP Fri Jun 30 14:47:43 BST 2017 armv7l GNU/Linux

nodejs官网查看最新版本,当前最新稳定版为6.11.2,下载已经编译好的版本:

$ wget https://nodejs.org/dist/latest-v6.x/node-v6.11.2-linux-armv7l.tar.gz

网速可能比较慢,可以喝杯咖啡稍等片刻,下载完后进行解压:

$ tar -xvf node-v6.11.2-linux-armv7l.tar.gz

解压完毕,进入目录,验证node是否可用:

$ cd node-v6.11.2-linux-armv7l/bin/
$ ./node -v
v6.11.2

在将该文件夹改名node(改不改根据个人喜好),此时我的node文件夹路径为:

/home/pi/node

再验证包管理工具npm是否正常:

$ ./npm -v
3.10.10

配置node,让全局都能使用:

sudo ln /home/pi/node/bin/node /usr/local/bin/node

配置mpn,让全局能用:

sudo ln -s /home/pi/node/lib/node_modules/npm/bin/npm /usr/local/bin/npm

此时执行

$ npm -v
module.js:471
    throw err;
    ^

Error: Cannot find module '/usr/local/bin/node_modules/npm/bin/npm-cli.js'
    at Function.Module._resolveFilename (module.js:469:15)
    at Function.Module._load (module.js:417:25)
    at Module.runMain (module.js:604:10)
    at run (bootstrap_node.js:389:7)
    at startup (bootstrap_node.js:149:9)
    at bootstrap_node.js:504:3

会报错,现实路径不对,修改/usr/local/bin中的npm文件,把两处相对路径$basedir改为绝对路径/home/pi/node,修改后的代码如下:

#!/bin/sh
(set -o igncr) 2>/dev/null && set -o igncr; # cygwin encoding fix

basedir=`dirname "$0"`

case `uname` in
    *CYGWIN*) basedir=`cygpath -w "$basedir"`;;
esac

NODE_EXE="/home/pi/node/node.exe"
if ! [ -x "$NODE_EXE" ]; then
  NODE_EXE=node
fi

NPM_CLI_JS="/home/pi/node/lib/node_modules/npm/bin/npm-cli.js"

case `uname` in
  *MINGW*)
    NPM_PREFIX=`"$NODE_EXE" "$NPM_CLI_JS" prefix -g`
    NPM_PREFIX_NPM_CLI_JS="$NPM_PREFIX/node_modules/npm/bin/npm-cli.js"
    if [ -f "$NPM_PREFIX_NPM_CLI_JS" ]; then
      NPM_CLI_JS="$NPM_PREFIX_NPM_CLI_JS"
    fi
    ;;
  *CYGWIN*)
    NPM_PREFIX=`"$NODE_EXE" "$NPM_CLI_JS" prefix -g`
    NPM_PREFIX_NPM_CLI_JS="$NPM_PREFIX/node_modules/npm/bin/npm-cli.js"
    if [ -f "$NPM_PREFIX_NPM_CLI_JS" ]; then
      NPM_CLI_JS="$NPM_PREFIX_NPM_CLI_JS"
    fi
    ;;
esac

"$NODE_EXE" "$NPM_CLI_JS" "$@"
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值