Download compiled version of Node.js 0.12.1 Stable for Raspberry Pi here

Unfortunately, just like 0.12.0, the 0.12.1 release of Node won't compile on Raspberry Pi so I took a patch from io.js and was able to build it.

Unfortunately, just like 0.12.0, the 0.12.1 release of Node won’t compile on Raspberry Pi (pre 2) so I took a patch from io.js and was able to build it.

Node.js

The problem is due to recent releases of Raspbian mis-identifying the ARM version so Node tries to build for V7 instead of V6. These two changes from this io.js thread sort it out.

I set the Raspberry Pi B+ to Turbo mode and it took 4ish hours to build

Download here and enjoy.

wget https://d2j17b10ywb1i7.cloudfront.net/wp-content/uploads/2015/03/node-v0.12.1-linux-arm-pi.tar.gz
tar -zxvf node-v0.12.1-linux-arm-pi.tar.gz
cd node-v0.12.1-linux-arm-pi
sudo cp -R * /usr/local/

Updated files:

Diffs:

  • configure
493a494,495
>     o['variables']['arm_fpu'] = 'vfpv3'
>     o['variables']['arm_neon'] = int(is_arm_neon())
495,496d496
<   elif is_arch_armv6():
<     o['variables']['arm_version'] = '6'
498c498,500
<     o['variables']['arm_version'] = 'default'
---
>     o['variables']['arm_fpu'] = 'vfpv2'
>     o['variables']['arm_neon'] = 0
>     o['variables']['arm_version'] = '6' if is_arch_armv6() else 'default'
500,501d501
<   o['variables']['arm_fpu'] = 'vfpv3'  # V8 3.18 no longer supports VFP2.
<   o['variables']['arm_neon'] = int(is_arm_neon())
  • cpu.cc
368c368
<     // We try to correct this by looking at the 'elf_platform'
---
>     // We try to correct this by looking at the 'elf_format'
374c374
<       char* processor = cpu_info.ExtractField("model name");
---
>       char* processor = cpu_info.ExtractField("Processor");
  • Make Test Output: [25:08|% 100|+ 775|- 6]: Done (failures seem to be timeouts mainly)

Conor O'Neill

Tech guy who likes running slowly

Bandon, Cork, Ireland https://conoroneill.net