二分之一

Just Jason's Blog

树莓派(B、B+版)编译Node.js失败的解决方法(附树莓派下已编译可用的Node.js安装包)

树莓派B+版已在8月份发布,国内现已可以购买。相对于B版,CPU没有做升级,不过GPIO扩展到40个,USB增加至4个,音频和视频输出合二为一,能有效降低功耗。

Jason对树莓派还是有一种莫名的爱,虽然硬件玩的不溜,但是永保一颗爱折腾的心。于是将原来手上的B版及相关配件全部在鹅厂BBS上出掉了,换了一个B+版,到货合影:

一、初始化树莓派各种环境和配置后,第一件事就是安装Node.js

下载的是Node.js稳定版本中最新的0.10.31的源文件(http://nodejs.org/dist/v0.10.31/node-v0.10.31.tar.gz),打算自行编译安装。不知道是我的SD卡读写速度不够快,还是Node的编译本来就需要花这么长时间,整整两个半小时后,告诉我编译错误,翻译了网站没有找到相似问题解决方法。

undefined reference to `_armv7_tick'

怀疑是openssl的引用有问题,又把Node的依赖包都更新了一篇,再make clean,再编还是失败,反复找各种解决方法无果,四五个小时就过去了...终于在Node.js的官网找到一个安装包,node-v0.10.28-linux-arm-pi.tar.gz,最新版只到0.10.28。

二、树莓派下已编译可用的Node.js安装包

Node.js官方所有版本的发行安装包,http://nodejs.org/dist/,在里面找来找去,终于找到了一个arm-pi版的,最新版为0.10.28,不过已相当让我开心了。

对树莓派系统较老的用户,建议进行一下刷新升级:

sudo apt-get update
sudo apt-get upgrade

正式安装:

sudo su -
cd /opt
wget http://nodejs.org/dist/v0.10.28/node-v0.10.28-linux-arm-pi.tar.gz
tar -xzvf node-v0.10.28-linux-arm-pi.tar.gz
ln -s node-v0.10.28-linux-arm-pi node
chmod a+rw /opt/node/lib/node_modules
chmod a+rw /opt/node/bin
echo 'PATH=$PATH:/opt/node/bin' > /etc/profile.d/node.sh
^D

注意:^D,代表的是Ctrl+D,退出超级用户的登录。

至此树莓派已安装完毕,几分种就搞定,比编译快的多了。新开一个终端,或者sudo reboot重启树莓派,Node就已经生效。

node -v
#v0.10.28

后面打算认真用Node.js折腾树莓的GPIO,顺便深入一下Node.js和linux的知识。

最后修改时间:2014年9月14日星期日下午3点21