From Fedora Project Wiki

< Architectures‎ | ARM

Revision as of 12:00, 28 December 2011 by Zodiac1111 (talk | contribs)

Fedora/ARM 交叉编译工具链

The F12 ARM initiative created ARM cross toolchain packages for i386 and x86_64 that are built from the same sources as the Fedora native toolchain packages (binutils, gcc, gdb, glibc.) Right now these are gcc-4.1 vintage.

安装这个工具链到你的Fedora计算机:

# cd /etc/yum.repos.d/
# wget http://ftp.linux.org.uk/pub/linux/arm/fedora/cross/cross.repo
# yum install armv5tel-redhat-linux-gnueabi-gcc

This will install everything necessary to run the C compiler and cross-build ARM libraries and binaries that are entirely binary compatible with the native Fedora/ARM libraries and binaries.

如果你对此感兴趣,可以从这里获得源码包.


Cross-compiling ARM userland binaries

使用交叉编译器编译一个ARM下的Hello World程序的范例: To cross-compile the canonical Hello World example for ARM, do:

$ armv5tel-redhat-linux-gnueabi-gcc -Wall -o hello hello.c
$

Cross-compiling ARM kernels

你也可以使用交叉编译工具链来交叉编译一个ARM架构下的Linux内核,只需要修改在顶层目录下的Makefile文件的以下两行: You can also use the cross-toolchain to cross-build an ARM Linux kernel, by changing these two lines in the top-level Makefile:

ARCH            ?= $(SUBARCH)
CROSS_COMPILE   ?=

为:

ARCH            ?= arm
CROSS_COMPILE   ?= armv5tel-redhat-linux-gnueabi-

然后像往常一样编译你的内核。 and then building your kernel as usual.