The Past, Present and Future of Ubuntu for ARM

David Mandala of Canonical talked at Linux.Conf.Au on 18th of January 2012 about Ubuntu for ARM and the move from netbook to server support. You can read my notes below, or jump at the end of this post to watch the presentation. The Past 2008:  Ubuntu decides to only support ARMv7 architecture vs. Debian that supports ARMv4 and above. 2009:  Ubuntu release for Freescale i.MX51 (ARMv5 built), and then Marvell ARMAVA with ARMv6 and VFP (ARM floating point unit) support. 2010: April (10.04) The first ARMv7 release for OMAP3 (Beagleboard) with VFP, Thunb2, NEON and SMP for ARM and first netbook edition October (10.10) Pandabord (OMAP4) release with initial device tree support for ARM. Starts work with Linaro. 2011: 11.04 (5th release) – Supports OMAP3 and OMAP4 only. The netbook edition is using Qt, further improvement to device tree, further work with linaro and on the way to the Unified […]

Cross-compiling Berkelium for ARMv6 with Emdebian Toolchain

Berkelium is a BSD licensed library that provides off-screen browser rendering via Google’s open source Chromium web browser. This library is used by Xibo Digital Signage Player python client and I already cross-compiled it using Ubuntu/Linaro  toolchain. Since I need it to run on ARMv6 for the Raspberry Pi, I have cross-compiled it again in Debian with Emdebian ARM cross-compiler. Here are the instructions I followed to build Berkelium and Chromium for ARMv6 in Debian. First, you’ll need to install some development libraries for ARM: sudo /usr/share/pdebuild-cross/xapt -a armel libnss3-dev libgconf2-dev libgnome-keyring-dev libgtk2.0-dev libgnome-keyring-dev libgtk2.0-dev libxtst-dev libpam-dev libxss-dev libdbus-glib-1-dev libnss3-dev libgconf2-dev libgnome-keyring-dev libxss-dev libdbus-glib-1-dev libnspr4-dev libglib2.0-dev libjpeg-dev libasound2-dev libbz2-dev libgcrypt-dev libspeex-dev libcups2-dev and some tools on the build machine: sudo apt-get install git-core subversion cmake doxygen gyp gperf flex bison On 64-bit build machines (required for debug build) also install g++-multi and possibly some 32-bit libraries with xapt:

If […]

Cross-compiling libavg 1.7 for ARM on Debian

libavg is a high-level development platform for media-centric applications using Python as scripting language and written in C++ and I’ve already written a post to cross-compile libavg 1.6 in Ubuntu (with linaro cross toolchain) and using Beagleboard qemu image. Since I’ve doing some preparation work to have software running on the Raspberry Pi and that the latter won’t support Ubuntu, I’ve had to cross-compile it again. This time, I’ve found a cleaner way to do the cross-compilation with dpkg-cross and xapt tools which can load the required armel package to the arm toolchain. Those tools really make life easy, as previously (a few years ago), I would have had to cross-compile all dependencies manually. Here are the steps I followed: Install Emdebian ARM Cross Toolchain and Tools in Debian. Download libavg 1.7 source code

Extract it

Install the following armel development packages: sudo /usr/share/pdebuild-cross/xapt -a armel libpango1.0-dev libavformat-dev […]

Ubuntu TV Works on OMAP4 Pandaboard

Ricardo Salveti, Software Engineer at Canonical,  has written a blog post saying that Ubuntu TV now support full video hardware acceleration on the Pandaboard, TI OMAP 4 low cost development board. A demo of Ubuntu TV on the ARM platform with Ubuntu TV UI and 720p/1080p video playback can be seen in the video below. Pandaboard is the first ARM platform that can fully run Ubuntu TV. If you have a Pandaboard, you can try it out by installing the packages available at Linaro’s Overlay PPA. Qt and Qtmobility are not there yet (Patches are available at https://github.com/robclark/qtmobility-1.1.0), but he said they would be soon. The source code for Ubuntu TV is available at https://code.launchpad.net/~s-team/ubuntutv/trunk   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. […]

Installing Emdebian ARM Cross Toolchain in Debian

I had previously installed Sourcery G++ ARM Linux toolchain in Ubuntu to build some software running in Debian, but I encountered some issues with some libraries (libavg) that use gethostbyname in static libraries without any easy way to make it dynamic. In that case, the library in the rootfs and cross-compiler must match.  So I decided to install Debian Squeeze (6.0.3) and the corresponding cross-toolchain by Emdebian (short for Embedded Debian). First to use this toolchain, add the URL to get Emdebian packages to /etc/apt/sources.list: # # — Emdebian cross toolchains # deb http://www.emdebian.org/debian/ squeeze main Then install Emdebian public key: apt-get install emdebian-archive-keyring apt-get update If you don’t install the key, you’ll get the following error: W: GPG error: http://www.emdebian.org squeeze Release: The following signatures couldn’t be verified because the public key is not available: NO_PUBKEY B5B7720097BB3B58 Search and install packages for the architecture that you need, in this […]

Intel or ARM NoteBook? Lenovo Says Both

Lenovo has announced the ThinkPad X1 Hybrid notebook which features an Intel Core processor (i3, i5, or i7 depending on the model) AND a Qualcomm Dual core ARM processor, allegedly a Qualcomm APQ8060 and runs both Windows 7 and a custom version of Linux. My first reaction when I read the news was: “What a stupid idea!” :~/ The ThinkPad X1 Hybrid has 13.3″ HD display with 1366×768 resolution and built with Gorilla Glass. The laptop also features an HD webcam, a fingerprint reader, an encrypted hard disk drive, an HDMI port, USB ports, and Intel’s Wireless Display (WiDi) technology. RapidCharge technology charges to 80% capacity in 30 minutes, i.e. approximately the time it takes to take a shower and cook an egg… (Not my idea, see promo video below). The only thing that can possibly justify having two different processors on the machine is the Instant Media Mode (IMM) […]

Android 4.0 Hardware Graphics Acceleration Coming to More Platforms

The Linaro Android Platform Team has just posted a weekly update to their progress. They are going to release 11.12 very soon with hardware graphics acceleration to 2 of their members development boards: ST Ericsson Nova A9500 Snowball and Samsung Exynos 4212 Origen boards. So if you have any boards or products based on those processors you should be able to get an hardware optimized version very soon. Hardware acceleration is already available on all OMAP4 platform such as Pandaboard, since this was the default Android ICS target. They also introduced support for the ARM DS-5 debugger, an Eclipse plug-in to help developer create high performance performance  and low power native software by integrating a graphical debugger for code generated for the Android Native Development Kit (NDK) and a basic version of the ARM Streamline performance analysis tool. Here’s a list of this week achievements: Key Points for wider discussion […]

ARM Releases Free DS-5 Community Edition For Android Developers

ARM announced a free version of its Eclipse-based  DS-5 tools for small development firms (with 10 or fewer developers) and individuals who publish applications for Android. The ARM Development Studio 5 (DS-5) Community Edition (CE) helps create performance- and power-optimized native software by integrating a graphical debugger for code generated for the Android Native Development Kit (NDK) and a basic version of the ARM Streamline performance analysis tool. DS-5 CE is designed to work with Android Virtual Devices ( AVDs), development boards and devices that run Android 2.2 and API 8 or higher. ARM Development Studio 5 (DS-5) Community Edition is distributed as plug-in for Eclipse and completes the app developer toolkit with a C, C++ and Assembly graphical debugger that builds on the Android Debug Bridge (ADB), a software performance profiler and system analyzer (ARM Streamline). To get started, you’ll need Eclipse IDE, the Android SDK and the Android NDK […]

EmbeddedTS embedded systems design