The current 1.5.6-r2 release for 64 bit linux packages a 32 bit toolchain, leading to compilation failures if 32 bit libraries aren't installed:
peter@peter-VirtualBox:~$ tar zxf arduino-1.5.6-r2-linux64.tgz
peter@peter-VirtualBox:~$ arduino-1.5.6-r2/hardware/tools/g++_arm_none_eabi/bin/arm-none-eabi-g++
bash: arduino-1.5.6-r2/hardware/tools/g++_arm_none_eabi/bin/arm-none-eabi-g++: No such file or directory
peter@peter-VirtualBox:~$ file arduino-1.5.6-r2/hardware/tools/g++_arm_none_eabi/bin/arm-none-eabi-g++
arduino-1.5.6-r2/hardware/tools/g++_arm_none_eabi/bin/arm-none-eabi-g++: ELF 32-bit LSB executable, Intel 80386, version 1 (SYSV), dynamically linked (uses shared libs), for GNU/Linux 2.2.5, stripped
On my Ubuntu test system I was able to get it to work by enabling multiarch and installing the 32 bit libc like this:
sudo dpkg --add-architecture i386
sudo apt-get update
sudo apt-get install libc6:i386
But would it be possible to ship a 64 bit toolchain instead?