Differences

This shows you the differences between two versions of the page.

Link to this comparison view

cross [2015/11/19 22:25]
cross [2022/04/16 12:22] (current)
Line 1: Line 1:
 +
 +===== [[Software]] =====
 +
 +  * http://www.emdebian.org/stage.html
 +  ** http://www.scratchbox.org/
 +  *** http://buildroot.uclibc.org/
 +  *** http://busybox.net/
 +  * http://www.microwindows.org/
 +  * http://blog.brokenfunction.com/2011/11/how-to-make-a-massively-cross-platform-game/# CrossPlatform
 +
 +
 +===== [[Hardware]] / [[Device]] =====
 +
 +  * http://sourceforge.net/projects/explora-linux
 +  * http://i.want.to.surf.free.fr/NCD/HTML/LinuxNCDPort.fr.html
 +( http://gulliver.eu.org/wiki/Inventaire )
 +  * http://vmahe.free.fr/LinuxPorts/PortLinux.html
 +  * http://www.f-b-x.net/
 +  * [[Nokia]] 770 : http://www.maemo.org/index.html
 +  * http://linuxfr.org/2005/10/23/19780.html
 +
 +
 +===== ARM =====
 +
 +  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
 +
 +  * https://github.com/rzr/linux/commit/cb99ba71ea3e7c0bfed4e3605588c41fd7ddb6bb
 +  * http://forum.kernelnewbies.org/read.php?12,993
 +
 +ToDo CrosS CompilE for ArM
 +
 +  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
 +
 +
 +
 +RaiD Armv5 NaS :
 +
 +  * http://code.google.com/p/buffalo-nas-hacking/wiki/HOWTO_Debian_Crosscompile_ARM9_kernel
 +  * http://www.nas-central.org/index.php/Setting_up_the_codesourcery_toolchain_for_X86_to_ARM9_cross_compiling
 +
 +  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
 +
 +  * http://sites.google.com/site/shihsung/linkstation-mips/convert-to-lenny
 +  * http://git.marvell.com/?p=orion.git;a=summary
 +
 +@TaG: [[ARMv5]] [[Raid]] [[Nas]]
 +
 +
 +===== emdebian =====
 +
 +  * http://wiki.debian.org/EmdebianToolchain
 +
 +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
 +
 +  * http://www.linux.codehelp.co.uk/serendipity/index.php?/archives/153-Yes,-Im-going-to-FOSDEM-too.html
 +  * http://www.linux.codehelp.co.uk/fosdem/
 +
 +@TaG: [[emdebian]] ToolChain ArmeL
 +
 +
 +===== dpkg-cross =====
 +
 +  * http://psas.pdx.edu/DebianCrossCompilerHowto/
 +  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'
 +
 +
 +
 +===== [[Devel]] [[Linux]] =====
 +
 +  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}
 +
 +
 +===== Err =====
 +
 +  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
 +
 +
 +===== MISC =====
 +
 +  * http://free-electrons.com/training
 +  * http://thomas.enix.org/Blog-20050401235326-Actualite
 +
 +  file:///scratchbox/doc/html/installdoc.html
 +  irc://irc.freenode.net/#scratchbox #  [[IRC]]
 +
 +  * http://developers.slashdot.org/story/14/01/18/0251214/chrome-is-the-new-c-runtime 
 + 
 +  
 +===== MORE =====
 +
 +@TaG: EmdeddeD CompilE CompilatioN KerneL RootFs ScratchBox [[GNU]] [[Port]] [[GCC]] [[Linux]] [[OS]] [[Device]] [[Embedded]] [[armel]] [[armv5]] PowerPc
 +
 +
 +{{http://img249.echo.cx/img249/6660/g37382ex.jpg}}
 +
  
 
Except where otherwise noted, content on this wiki is licensed under the following license: CC Attribution-Share Alike 3.0 Unported
Recent changes RSS feed Donate Powered by PHP Valid XHTML 1.0 Valid CSS Driven by DokuWiki