apt-get install linux-source unp devscripts kernel-package build-essential libncurses5-dev devio uboot-mkimage lzma -rw-r--r-- 1 root root 76621581 Nov 14 2011 /usr/src/linux-source-3.1.tar.bz2 cd root/src/linux-source-3.1# time make pkg-deb
release=jessie ; echo "deb http://www.emdebian.org/tools/debian/ $release main" | sudo tee /etc/apt/sources.list.d/emdebian.list
OutDated :
echo "deb http://www.emdebian.org/debian/ stable main" | sudo tee /etc/apt/sources.list.d/emdebian.list sudo aptitude update ; aptitude search arm-linux-gnueabi sudo aptitude install c-compiler-arm-linux-gnueabi gcc-4.4-arm-linux-gnueabi time make ARCH=arm CROSS_COMPILE=arm-linux-gnueabi- menuconfig deb-pkg
# iowrite32be 'implicit declaration of function' # http://madwifi-project.org/ticket/1539
Then when rebuilding LirC I had to rebuid parts of the headers on my armv5 NaS :
root@nas:/usr/src/linux-headers-3.1.1lsproduo-00009-g4d27e1c/scripts/mod# 526 rm *.o 543 make obj=. sumversion.o file2alias.o modpost.o 544 cc *.o 547 mv a.out modpost
sudo bash -x ~/bin/setup_codesourcery.sh /usr/local/bin/codesourcery-arm-2011.03.sh ARCH=arm CROSS_COMPILE=arm-none-linux-gnueabi- PATH=${PATH}:/usr/local/codesourcery/arm-2011.03/bin git clone git://git.marvell.com/orion.git
ProbleM :
cpp-4.4-arm-linux-gnueabi : Depends: libgmp3c2 but it is not installable
SolutioN : add stable.list
VERSION=4.4 # VERSION=4.3 ARCH=arm SUBARCH=armel sudo aptitude install \ libc6-${SUBARCH}-cross libc6-dev-${SUBARCH}-cross \ binutils-${ARCH}-linux-gnueabi \ gcc-%{VERSION}-${ARCH}-linux-gnueabi g++-%{VERSION}-${ARCH}-linux-gnueabi
sudo aptitude install pbuilder dpatch
sudo chown -R $USER.staff .. export ARCH=arm export TARGET=armel-linux-gnu fakeroot debian/rules binary-cross > ../binutils.build 2>&1 || echo 'Build error'
url=http://ftp.us.debian.org/debian/pool/main/g/glibc/ lynx -dump $url | grep libc6 | grep armel | grep http | sed -e 's|.*\(http.*\)|\1|g' | xargs -n 1 wget -c url=http://ftp.us.debian.org/debian/pool/main/l/linux-kernel-headers/ lynx -dump $url | grep http | sed -e 's|.*\(http.*\)|\1|g' | grep $ARCH | xargs -n 1 wget -c url=http://http.us.debian.org/debian/pool/main/g/gcc-4.3/ lynx -dump $url | grep http | sed -e 's|.*\(http.*\)|\1|g' | grep $ARCH | xargs -n 1 wget -c
dpkg-cross -a armel -b *${ARCH}*.deb sudo dpkg -i *${ARCH}*cross*.deb # sudo dpkg -i libc6-armel-cross*.deb # ignore errors 1st
export GCC_TARGET=${ARCH} debian/rules control dpkg-buildpackage -us -uc -rfakeroot -b > ../gcc.build 2>&1 || echo 'Build error'
sudo apt-get install wget unp apt-src fakeroot build-essential sudo addgroup ${USER} src
export DESTDIR=/usr/local/local/${OSTYPE}/opt/ export TARGET_ARCH=powerpc-elf-linux # for Explora401's [[CPU]] : PowerPC 403GA export BINUTILS_PREFIX=${DESTDIR}/binutils-2.16.1cvs20051214-${TARGET_ARCH}/ export GCC_PREFIX=${DESTDIR}/gcc-4.0.2-${TARGET_ARCH} export AS=${BINUTILS_PREFIX}/bin/${TARGET_ARCH}-as
export PATH=${BINUTILS_PREFIX}/bin:${PATH}
sudo mkdir -p ${DESTDIR} sudo chgrp src ${DESTDIR} cd ~/src/
### binutils :
# http://directory.fsf.org/GNU/binutils.html # wget http://ftp.gnu.org/gnu/binutils/binutils-2.16.1.tar.gz
sudo apt-src install binutils cd binutils-*
export BINUTILS_PREFIX=${DESTDIR}/$(basename $(pwd))-${TARGET_ARCH}/
./configure --prefix=${BINUTILS_PREFIX} --target=${TARGET_ARCH} \ && make && make install
ls ${BINUTILS_PREFIX}/bin/ # powerpc-elf-linux-addr2line powerpc-elf-linux-nm powerpc-elf-linux-size # powerpc-elf-linux-ar powerpc-elf-linux-objcopy powerpc-elf-linux-strings # powerpc-elf-linux-as powerpc-elf-linux-objdump powerpc-elf-linux-strip # powerpc-elf-linux-c++filt powerpc-elf-linux-ranlib # powerpc-elf-linux-ld powerpc-elf-linux-readelf
cd ..
### Now [[GCC]] :
export PATH=${BINUTILS_PREFIX}/bin:${PATH}
sudo apt-src install gcc-4.0 # http://gcc.gnu.org # cd gcc-* export GCC_PREFIX=${DESTDIR}/$(basename $(pwd))-${TARGET_ARCH}
# ToDo : the Debian way
wget http://gcc.fyxm.net/releases/gcc-4.0.2/gcc-4.0.2.tar.bz2 \ && unp gcc*.tar.bz2
# http://gcc.gnu.org/install/configure.html mkdir -p tmp && cd tmp
../configure --prefix=${GCC_PREFIX} --target=${TARGET_ARCH} \ *-enable-languages=c --disable-threads --disable-shared \ && make
# as: unrecognized option `-mppc' # http://gcc.gnu.org/ml/gcc-help/2004-03/msg00242.html
make AS=${AS}
su: This applet requires root priviledges chmod +s /bin/busybox
powerpc :
make[[2]]: Entering directory `/home/coval/src/buildroot/toolchain_build_powerpc/uClibc' ... libc/sysdeps/linux/common/sendfile.c:18: error: conflicting types for 'sendfile64'
./include/sys/sendfile.h:47: error: previous declaration of 'sendfile64' was here
libc/sysdeps/linux/common/sendfile.c:18: error: conflicting types for 'sendfile64'
./include/sys/sendfile.h:47: error: previous declaration of 'sendfile64' was here
file:///scratchbox/doc/html/installdoc.html irc://irc.freenode.net/#scratchbox # [[IRC]]