Easy Install gcc Cross Compiler

From Ariaboard Wiki
Revision as of 21:14, 8 March 2015 by C2h2 (talk | contribs) (Created page with "We are using Linaro gcc armhf cross compiler, getting the binaries of gcc from the official or trusted source is preferred. ==Why Cross Compiling== Cross compiler enables u...")
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search

We are using Linaro gcc armhf cross compiler, getting the binaries of gcc from the official or trusted source is preferred.


Why Cross Compiling

Cross compiler enables us to compile ARM code on x64/x86 machines with 10 times plus speed. we will use it for Kernel, U-Boot, and other compilation.

To understand what a cross compiler is, plz read http://en.wikipedia.org/wiki/Cross_compiler

Linaro gcc at launchpad.net:

Home Page: https://launchpad.net/linaro-toolchain-binaries/

Simple Install 2013.04 Linaro gcc

prerequisites

sudo apt-get -y install libgphoto2-2:i386 libsane:i386 libgd2-xpm:i386 ia32-libs-multiarch uboot-mkimage lzop
sudo apt-get -y install bc build-essential device-tree-compiler lsb-release lzma lzop fakeroot u-boot-tools ia32-libs ccache ia32-libs lzop


actual install

cd /opt
sudo wget https://launchpad.net/linaro-toolchain-binaries/trunk/2013.04/+download/gcc-linaro-arm-linux-gnueabihf-4.7-2013.04-20130415_linux.tar.xz
sudo tar xvfJ gcc-linaro-arm-linux-gnueabihf-4.7-2013.04-20130415_linux.tar.xz
echo "PATH=/opt/gcc-linaro-arm-linux-gnueabihf-4.7-2013.04-20130415_linux/bin:${PATH}" >> ~/.bashrc


test installation

re-login your console and test with:

root@avernus:~# arm-linux-gnueabihf-gcc
arm-linux-gnueabihf-gcc: fatal error: no input files
compilation terminated.

yeh! it works!


faq

请注意:这个工具包是32位程序,在某些不兼容32位程序的64位linux系统中会报如下错误

~# arm-linux-gnueabihf-gcc
zsh: no such file or directory: arm-linux-gnueabihf-gcc

Actuall Path Installed at

/opt/gcc-linaro-arm-linux-gnueabihf-4.7-2013.04-20130415_linux/arm-linux-gnueabihf/bin
/opt/gcc-linaro-arm-linux-gnueabihf-4.7-2013.04-20130415_linux/bin