在ubuntu系统下安装arm--tiny6410交叉编译工具链

        本文以友善之臂的Tiny6410开发板为例,在ubuntu系统中安装交叉编译工具链,它的作用是在计算机上编译出可以在arm平台上运行的内核、驱动模块、应用程序等。

        在这里我使用的是友善之臂提供的arm-linux-gcc-4.5.1源码。

1、解压源文件

         首先将arm-linux-gcc-4.5.1.tgz复制到计算机中,可以复制到任意个文件夹中,然后在终端中进入这个文件夹,执行下面的命令

tar xvzf arm-linux-gcc-4.5.1.tgz -C /

这个命令的作用是解压arm-linux-gcc-4.5.1.tgz,-C表示改变目录,后边的斜杠表示将解压后的文件目录改为根目录。解压之后,将arm-linux-gcc安装到/opt/FriendlyARM/toolschain/4.5.1目录下。

2、修改环境变量

        这一步的操作是把编译器的路径加入到系统环境变量中。需要修改~/.bashrc文件。执行下面的命令打开该文件

gedit ~/.bashrc

在这个文件的最下边加入如下代码

export PATH=/opt/FriendlyARM/toolschain/4.5.1/bin:$PATH

3、验证

        安装了交叉编译链之后,我们要验证一下是否安装成功。首先重启一下系统。然后在终端上输入如下命令

arm-linux-gcc -v

出现如下所示的信息

Using built-in specs.
COLLECT_GCC=arm-linux-gcc
COLLECT_LTO_WRAPPER=/opt/FriendlyARM/toolschain/4.5.1/libexec/gcc/arm-none-linux-gnueabi/4.5.1/lto-wrapper
Target: arm-none-linux-gnueabi
Configured with: /work/toolchain/build/src/gcc-4.5.1/configure --build=i686-build_pc-linux-gnu --host=i686-build_pc-linux-gnu --target=arm-none-linux-gnueabi --prefix=/opt/FriendlyARM/toolschain/4.5.1 --with-sysroot=/opt/FriendlyARM/toolschain/4.5.1/arm-none-linux-gnueabi/sys-root --enable-languages=c,c++ --disable-multilib --with-cpu=arm1176jzf-s --with-tune=arm1176jzf-s --with-fpu=vfp --with-float=softfp --with-pkgversion=ctng-1.8.1-FA --with-bugurl=http://www.arm9.net/ --disable-sjlj-exceptions --enable-__cxa_atexit --disable-libmudflap --with-host-libstdcxx='-static-libgcc -Wl,-Bstatic,-lstdc++,-Bdynamic -lm' --with-gmp=/work/toolchain/build/arm-none-linux-gnueabi/build/static --with-mpfr=/work/toolchain/build/arm-none-linux-gnueabi/build/static --with-ppl=/work/toolchain/build/arm-none-linux-gnueabi/build/static --with-cloog=/work/toolchain/build/arm-none-linux-gnueabi/build/static --with-mpc=/work/toolchain/build/arm-none-linux-gnueabi/build/static --with-libelf=/work/toolchain/build/arm-none-linux-gnueabi/build/static --enable-threads=posix --with-local-prefix=/opt/FriendlyARM/toolschain/4.5.1/arm-none-linux-gnueabi/sys-root --disable-nls --enable-symvers=gnu --enable-c99 --enable-long-long
Thread model: posix
gcc version 4.5.1 (ctng-1.8.1-FA) 

这说明交叉编译工具已经安装成功了。

4、测试

       下面我编写一个简单hello.c程序,进行测试,源码如下

    #include 
     
    int main()
    {
    	printf("Hello!\n");
    	return 0;
    }

这段代码比较简单,就是在终端上打印Hello!,用下面的命令对源码进行编译

arm-linux-gcc hello.c -o hello

可以生成可执行文件hello,将文件拷贝到开发板中,用下面的命令修改hello的权限

chmod +x hello

然后执行下面的命令

./hello

可以看到终端中打印出Hello!。

你可能感兴趣的:(嵌入式linux)