Embedding/IPCLiteAPI BeagleBoard

< Embedding
Revision as of 19:39, 8 February 2012 by Romaxa (talk | contribs)
Download and install Latest Codesourcery toolchain from http://sourcery.mentor.com/public/gnu_toolchain/arm-none-linux-gnueabi/arm-2011.09-70-arm-none-linux-gnueabi.bin

wget http://rcn-ee.net/deb/rootfs/oneiric/ubuntu-11.10-r4-minimal-armel.tar.xz
tar xJf ubuntu-11.10-r4-minimal-armel.tar.xz
cd ubuntu-11.10-r4-minimal-armel

sudo mkdir /home/rootfs
sudo cp armel-rootfs-*.tar /home/rootfs
cd /home/rootfs
sudo tar -xf armel-rootfs-*.tar

sudo /etc/init.d/scratchbox-core stop
sudo apt-get install qemu-arm-static # or qemu-user-static if debian
sudo cp /usr/bin/qemu-arm-static /home/rootfs/usr/bin

sudo cp /etc/apt/apt.conf /home/rootfs/etc/apt/
sudo cp /etc/resolv.conf /home/rootfs/et

sudo chroot /home/rootfs

Inside chroot:
apt-get install vim libqt4-dev bash-completion
echo "deb-src http://ports.ubuntu.com/ubuntu-ports/ oneiric main universe multiverse" >> /etc/apt/sources.list
apt-get update
apt-get build-dep firefox

sed 's%invoke-rc.d dbus start || exit $?%echo "Fake Start"%' -i /var/lib/dpkg/info/dbus.postinst
apt-get -f install

sed "s% /lib/arm-linux-gnueabi% /home/rootfs/lib/arm-linux-gnueabi%g" -i /usr/lib/arm-linux-gnueabi/libc.so
sed "s% /usr/lib/arm-linux-gnueabi% /home/rootfs/usr/lib/arm-linux-gnueabi%g" -i /usr/lib/arm-linux-gnueabi/libc.so
sed "s% /lib/arm-linux-gnueabi% /home/rootfs/lib/arm-linux-gnueabi%g" -i /usr/lib/arm-linux-gnueabi/libpthread.so
sed "s% /usr/lib/arm-linux-gnueabi% /home/rootfs/usr/lib/arm-linux-gnueabi%g" -i /usr/lib/arm-linux-gnueabi/libpthread.so


Outside chroot:
cat > ~/bin/fix_links.pl
#!/usr/bin/perl -w

my $rootfsPath = "/home/rootfs";
my $links = `ls -l`;
while ($links=~/^(.*)$/gm)
{
  my $link = $1;
  if ($link=~/\s+(lib.*)\s+\-\>\s+(.*)/) {
    my $fname = $1;
    my $targetname = $2;
    my $resval = system("test -f $targetname");
    if ($resval != 0) {
      print $fname.":".$rootfsPath."/".$targetname." - $resval\n";
      unlink($fname);
      symlink($rootfsPath."/".$targetname, $fname);
    }
  }
}



CTRL+D

fix fix_links.pl script

chmod a+x ~/bin/fix_links.pl
cd /home/rootfs/usr/lib/arm-linux-gnueabi/
sudo ~/bin/fix_links.pl
cd ..
sudo ~/bin/fix_links.pl

extract GFX_4_03_00_02_libs.tar.gz  into /home/rootfs/root/sgx
inside chroot:
cd /root/sgx
tar -zxvf GFX_4_03_00_02_libs.tar.gz 
./install-SGX.sh

Outside of chroot:

Folow instructions from: https://wiki.mozilla.org/Embedding/IPCLiteAPI#Build_instructions:
using mozconfig.beagle_ubuntu_cross  config