Инструменты пользователя

Инструменты сайта


it:crosscompile

Кросскомпиляция под arm

emerge crossdev
crossdev -S -s4 -t armv7a-hardfloat-linux-gnueabi
ln -s /usr/portage/profiles/default/linux/arm/13.0/armv7a /usr/armv7a-hardfloat-linux-gnueabi/etc/portage/make.profile
vi /usr/armv7a-hardfloat-linux-gnueabi/etc/portage/make.conf
SYSROOT=/usr/armv7a-hardfloat-linux-gnueabi/ ROOT=/home/arm/ PORTAGE_CONFIGROOT=/usr/armv7a-hardfloat-linux-gnueabi/ armv7a-hardfloat-linux-gnueabi-emerge blabla

make.conf:

CHOST=armv7a-hardfloat-linux-gnueabi
#CHOST=arm-unknown-linux-uclibceabi
CBUILD=i686-pc-linux-gnu
ARCH=arm
ACCEPT_KEYWORDS="arm ~arm"
HOSTCC=i686-pc-linux-gnu-gcc
E_MACHINE=EM_ARM

ROOT=/usr/${CHOST}/

ACCEPT_KEYWORDS="arm ~arm"

USE="${ARCH} zlib bindist make-symlinks minimal -suid -samba -cups -kde
	    -perl -python -berkdb -gdbm -sqlite -gpm -acl -pam -cracklib
	    -cramfs -pcre"

MARCH_TUNE="-march=armv7-a -mtune=cortex-a8"

CFLAGS="-Os -pipe ${MARCH_TUNE} -fomit-frame-pointer"
CXXFLAGS="${CFLAGS}"

FEATURES="-collision-protect ccache sandbox buildpkg noman noinfo nodoc"
INSTALL_MASK="HACKING.gz TODO.gz .keep*"
# Be sure we dont overwrite pkgs from another repo..
PKGDIR=${ROOT}packages/
PORTAGE_TMPDIR="/var/tmp/"

ELIBC="glibc"

PKG_CONFIG_PATH="${ROOT}usr/lib/pkgconfig/"
#PORTDIR_OVERLAY="/usr/portage/local/"

LIBDIR_arm="lib"
LIBDIR_amd64=lib64
PORTDIR="/usr/portage"
DISTDIR="/mnt/data/.gentoo/distfiles"
PORTDIR_OVERLAY="/var/lib/layman/sunrise /var/lib/layman/pentoo /var/lib/layman/mrueg"
MAKEOPTS="-j2"
GENTOO_MIRRORS="ftp://mirror.yandex.ru/gentoo-distfiles"

SYSROOT=/usr/armv7a-hardfloat-linux-gnueabi/ ROOT=/home/arm/ PORTAGE_CONFIGROOT=/usr/armv7a-hardfloat-linux-gnueabi/ armv7a-hardfloat-linux-gnueabi-emerge blabla

it/crosscompile.txt · Последнее изменение: 2013/12/16 14:36 — puse_vivat