Cubieboard編譯安裝NodeJS經驗總結


 

Cubieboard編譯安裝NodeJS經驗總結,以供新手免走彎路。

Cubieboad用的是arm處理器,NodeJs的編譯安裝上不像pc上那么簡單,可以一遍過。

單單make編譯一次,就得幾乎一個小時的時間。我是折騰了4,5次才徹底搞好。


先說一下,我的是A20的板子,v1.04-beta1,的系統! 8Gtf卡!安裝的最新node-v0.10.15版。

http://cubiebook.org/index.php?title=Cubieboard2/Lubuntu_12.04_Desktop



要點有以下幾點,
1,最好用root帳號操作,比在操作前加sudo靠譜,如何開啟root帳號可以下后面的備注。

  1. 先解除root鎖定,為root用戶設置密碼
  2. #sudo passwd
  3. Password:<---------輸入當前用戶密碼
  4. Enter new UNIX password:<------輸入root帳號密碼
  5. Retype new UNIX password:<------重復新的root用戶密碼
  6. pwsswd:已成功更新密碼,啟用root帳號
復制代碼

2,要把node-v0.10.15壓縮包下載到nand上,不要下載到mount掛載的tf卡上。

  1. root@cubieboard2:/# cd /home/linaro/Downloads/
  2. root@cubieboard2:/home/linaro/Downloads# wget http://www.nodejs.org/dist/v0.10.15/node-v0.10.15.tar.gz
復制代碼

進入 Downloads目錄,下載http://www.nodejs.org/dist/v0.10.15/node-v0.10.15.tar.gz,
下載成功后:

  1. #tar -xzvf node-v0.10.15.tar.gz
  2. #cd node-v0.10.15
  3. #./configure --without-snapshot
復制代碼

#tar -xzvf node-v0.10.15.tar.gz
#cd node-v0.10.15
#./configure --without-snapshot   【#注釋:這一句是關鍵,參考:http://www.armhf.com/index.php/node-js-for-the-beaglebone-black/

然后執行完,會有如下:

  1. { 'target_defaults': { 'cflags': [],
  2.                        'default_configuration': 'Release',
  3.                        'defines': [],
  4.                        'include_dirs': [],
  5.                        'libraries': []},
  6.   'variables': { 'arm_fpu': 'vfpv3',
  7.                  'arm_neon': 0,
  8.                  'armv7': 1,
  9.                  'clang': 0,
  10.                  'gcc_version': 47,
  11.                  'host_arch': 'arm',
  12.                  'node_install_npm': 'true',
  13.                  'node_prefix': '',
  14.                  'node_shared_cares': 'false',
  15.                  'node_shared_http_parser': 'false',
  16.                  'node_shared_libuv': 'false',
  17.                  'node_shared_openssl': 'false',
  18.                  'node_shared_v8': 'false',
  19.                  'node_shared_zlib': 'false',
  20.                  'node_tag': '',
  21.                  'node_unsafe_optimizations': 0,
  22.                  'node_use_dtrace': 'false',
  23.                  'node_use_etw': 'false',
  24.                  'node_use_openssl': 'true',
  25.                  'node_use_perfctr': 'false',
  26.                  'node_use_systemtap': 'false',
  27.                  'python': '/usr/bin/python',
  28.                  'target_arch': 'arm',
  29.                  'v8_enable_gdbjit': 0,
  30.                  'v8_no_strict_aliasing': 1,
  31.                  'v8_use_arm_eabi_hardfloat': 'true',
  32. <font color="#ff0000"><b>                 'v8_use_snapshot': 'false'</b></font>}}
  33. creating  ./config.gypi
  34. creating  ./config.mk
復制代碼

看到紅色的部分,'v8_use_snapshot': 'false' ,就可以繼續了。

  1. #make && make install
復制代碼

然后查看一下是否安裝成功:

  1. #node -v
復制代碼

應該可以看懂啊node版本號了:v0.10.15


安裝完成后node 和 npm就都好了,可以寫一段測試代碼測試一下,比如Helloworld.js

  1. console.log('Hello World run in NodeJS');
復制代碼

然后 #node Helloworld.js 
就可以看到nodejs的執行輸出了!

3,直接編譯安裝可以安裝成功,但是無法執行任何nodeJS代碼:

  1. #segmentation fault
復制代碼

在ARM上安裝node搞不好就會出 segmentation fault 。!




這里有node的各版本可供下載:

http://www.nodejs.org/dist/

http://stackoverflow.com/questions/16628118/node-js-source-code-build-giving-segmentation-fault-on-arm 上找到了一個同樣問題的,並且給出了解決辦法。





我的NodeJS 經過這兩天的折騰,終於搞好了。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM