Getting Started with MultiArch (armel / armhf) in Ubuntu

Until now, I used xapt and dpkg-cross to install cross libraries for armel, but since I’ve upgraded to Ubuntu 12.04, it appears to be broken. I’ve contacted Linaro about this issue, and the “cross-building” expert at Linaro (wookey) recommended me to use multiarch instead, as xapt/dpkg-cross will be eventually deprecated. He provided me an example showing how-to use multiarch to build Chromium. I’ve been looking for a “How-to multiarch”, but haven’t been able to find something really clear and simple, so I thought I would post it here. In the example, they used a chroot for cross-building, which is probably a good idea to avoid messing up with the system. It’s also possible multiarch is not 100% reliable, and I’ve read stories where people messed up their system when using multiarch with i386 (32-bit) and amd64 (64-bit). Preparing a chroot for cross-building I’ll use a 32-bit Ubuntu precise chroot, but […]

Glark, an alternative to Grep

grep is a very useful tool to search or filter strings in order to look for files, parse useful info in log files and more. glark is an alternative to grep, it has few features that grep does not such as complex expressions, Perl-compatible regular expressions, and excluding binary files. It also has a more fancy way of display results. It is described as follows in the manpage: Similar to “grep”, “glark” offers: Perl-compatible regular expressions, color highlighting of matches, context around matches, complex expressions (“and” and “or”), grep output emulation, and automatic exclusion of non-text files. Its regular expressions should be familiar to persons experienced in Perl, Python, or Ruby. File may also be a list of files in the form of a path. glark is not installed by default. To install it in Debian/Ubuntu/Mint: sudo apt-get install glark It does not appear to be available in Fedora and […]

Using OpenOCD JTAG in Android Kernel Debugging – Android Builder Summit 2012

Mike Anderson, CTO and Chief Scientist for The PTR Group, gives a tutorial about Linux kernel debugging in Android with OpenOCD JTAG at the Android Builder Summit in February 2012. Abstract: Owing to the use of the Linux kernel, Android device drivers can be debugged using many of the same techniques as Linux. Still, much of the user-space interface code typically found in Linux is missing in Android. This complicates the debugging of kernel driver code. This presentation will demonstrate the use of the open on-chip debug (OpenOCD) software and an inexpensive JTAG to debug Android kernel code. The target audience for this presentation are platform developers looking to debug their kernel code such as device drivers. This presentation is targeted at intermediate-level developers with some understanding of kernel code development. You can also download the presentation slides on linuxfoundation.org website. Jean-Luc Aufranc (CNXSoft)Jean-Luc started CNX Software in 2010 as […]

Android Device Porting Tutorial – Android Builder Summit 2012

Benjamin Zores, Open Source Software and Multimedia Architect at Alcatel-Lucent, gives step-by-step to port Android to your own device at Android Builder Summit in February 2012. Abstract: This talk is presented as a step by step tutorial meant for Android platform rookies, as to discover all Androidisms one has to tackle down to bring his own custom device to life. Based on a real-life Android 4.0 ICS device porting experience, the talk will cover early board bringup (from U-Boot and Fastboot to Linux kernel and drivers), AOSP device integration, Android-specific device init customization, touchscreen input layer adaptations and Hardware Abstraction Layer (HAL) driver interfaces development. You can also download the presentation slides on linuxfoundation.org website. Jean-Luc Aufranc (CNXSoft)Jean-Luc started CNX Software in 2010 as a part-time endeavor, before quitting his job as a software engineering manager, and starting to write daily news, and reviews full time later in 2011. www.cnx-software.com

How to Install Windows 8 in Linux with QEMU

Microsoft has just released Windows 8 Consumer Preview. Here’s a method to install Windows 8 in Linux using KVM and Qemu. You can use this beta version of Windows 8 until the 15th of January 2013, after which it will be unusable. Here are the requirements to install Windows 8: 1 GHz Processor or greater 1 GB RAM 20 GB free storage for the 64-bit version Before you start, make sure your processor supports Intel Virtualization Technology (VT) or AMD’s AMD V CPU virtualization extensions. Type this command to check vmx or svm flags:

If this is the case, you can install KVM. Type the following command for RPM-based distributions such as Fedora:

or the following command for Debian or Ubuntu:

Then download the ISO image of Windows 8 on Microsoft website (64-bit version) :

Create a 20 GB virtual hard drive to install Windows 8: […]

Free Electrons Releases Embedded Linux Training Materials

Free Electrons, a technology company offering embedded Linux consulting services as well as embedded Linux training, has released their training materials for Linux and system development for embedded systems including their Lab sessions. The training materials are available in their git repository in LaTeX format. If you want the latest documentation in PDF, you’ll need to build it by following those steps: Install the required packages:

Get the embedded Linux slides source:

Build the training materials:

The last three commands will generate the PDF files respectively: full-sysdev-labs.pdf – Embedded Linux Training Lab Book (58 pages) with instructions for the IGEPv2 board based on on TI DM3730 or OMAP3530. full-kernel-labs.pdf – Linux kernel and driver development training Lab Book (37 pages) full-sysdev-slides.pdf – Embedded Linux system development presentation slides (506 pages) Free Electrons also have slightly older version of full-kernel-labs.pdf and full-sysdev-slides.pdf available for download as PDF so […]

Yocto Project Quick Start Guide for Ubuntu

Yocto is an embedded Linux build system used to create a Linux distribution for a specific application/board combination. I’ll describe 2 methods to get started: Building and running  a qemu image for x86 from scratch Using pre-built binaries to run the x86 image in qemu This is a shorter version of the longish Yocto Project’s Quick Start Guide. The official guide is more complete (explains all details) and give instructions for several distributions, whereas this guide simply lists each step and is focused on Ubuntu. So you could use this guide to start the build, and during the build (which will last a while), read the official guide to actually understand how it all works.   Prerequisites First, you need to use bash instead of dash in Ubuntu:

and select “No” to use bash. Then install the required packages with apt-get:

Building and running a qemu image for […]

Opersys Releases Their Android and Linux Training Materials

Opersys has decided to release their courseware under a Creative Common license (CC-BY-SA 3.0). The materials are available in PDF and ODP format for the following classes: Embedded Android – 5-days hands-on class covering Android (AOSP) for Embedded Systems (not only smartphones and tablets) Presentation Slides: PDF | ODP Exercises: PDF | ODT Android App Development – 5-day class to learn how to build your own Android Apps using Google’s SDK Presentation Slides: PDF | Tarball with Beamer files Exercises: PDF | ODT Embedded Linux– 4-days hands-On class learning about cross development, the kernel, the rootFS and the bootloader Presentation Slides: PDF | ODP Exercises: PDF | ODT Linux Device Drivers– 3-days hands-on class about modules, locking, interrupts and memory management, as well as  char, block, network and USB drivers training. Presentation Slides:PDF | ODP Exercises: PDF | ODT You can freely use this material to learn more about Android and […]

UP 7000 x86 SBC