Cross Compile Rpi on Debian problem

Background

kalau di wiki resminya seperti ini saja :
http://elinux.org/RPi_Kernel_Compilation

semestinya semudah ini :
http://www.cnx-software.com/2012/01/16/installing-emdebian-arm-cross-toolchain-in-debian/

tapi ada masalah ini di wheezy :
http://comments.gmane.org/gmane.linux.debian.devel.embedded/6393

akhirnya workaround dengan ini :
http://copyninja.info/2013/01/multi-arch_based_cross-compilation.html

Dokumentasi

  • Download kernelnya di http://kambing.ui.ac.id/tonny/rpi-kernel/rpi-kernel-3.10.tar.gz dan extract :
    tar xvzf rpi-kernel-3.10.tar.gz
    
  • Do this
    dpkg --add-architecture armel
    
  • Setting proxy (kalau di UI), tambahkan /etc/apt/sources.list dengan
    deb http://emdebian.org/~thibg/repo/ sid main
    
    kemudian update.
  • install package berikut
    emdebian-archive-keyring git ncurses-dev make
    
    update lagi (supaya bisa masuk reponya emdebian). Ada peringatan "not found"? abaikan saja
  • install gcc-4.7-arm-linux-gnueabi. IMHO, ini tahap paling repot. Karena belum nyari package apa aja yang harusnya dipasang, jadi semacam bruteforce dulu.
    aptitude install gcc-4.7-arm-linux-gnueabi
    

    kedua gambar dibawah adalah langkah yang saya lakukan, mungkin bisa berbeda tiap orang :

  • Sepertinya kita menghilangkan gcc! Marilah install gcc :
    apt-get install gcc bc
    
  • Jalankan script (saya menjalankannya dua kali):
    update-alternatives --install /usr/bin/arm-linux-gnueabi-gcc arm-linux-gnueabi-gcc /usr/bin/arm-linux-gnueabi-gcc-4.7 46 --slave /usr/bin/arm-linux-gnueabi-g++ arm-linux-gnueabi-g++ /usr/bin/arm-linux-gnueabi-g++-4.7 --slave /usr/bin/arm-linux-gnueabi-gcov arm-linux-gnueabi-gcov /usr/bin/arm-linux-gnueabi-gcov-4.7 --slave /usr/bin/arm-linux-gnueabi-gfortran arm-linux-gnueabi-gfortran /usr/bin/arm-linux-gnueabi-gfortran-4.7
    
  • menuconfig (kalau belum punya config di RasPi) dan akhirnya compile (karena di virtualbox, jadi mungkin 1 proc saja)
    make ARCH=arm CROSS_COMPILE=/usr/bin/arm-linux-gnueabi- menuconfig
    make ARCH=arm CROSS_COMPILE=/usr/bin/arm-linux-gnueabi- -k
    

  • take a coffee and watch the compile process .......

-RD

tes1.JPG (58.9 KB) Ardhi Putra Pratama - RD, 13/11/2013 11:05

tes2.JPG (57.3 KB) Ardhi Putra Pratama - RD, 13/11/2013 11:05

makemenuconfig.JPG (92.1 KB) Ardhi Putra Pratama - RD, 13/11/2013 11:06