Qemu Linaro Versatile Express Image on Ubuntu 10.10

I’ve installed qemu-linaro and run an ARM image based on the instructions on https://wiki.linaro.org/PeterMaydell/QemuVersatileExpress. I used Ubuntu 10.10 desktop edition. First, install the Linaro images tools: sudo apt-get install linaro-image-tools Download the Linaro release and versatile hardware pack: wget http://releases.linaro.org/platform/linaro-n/nano/alpha-3/linaro-natty-nano-tar-20110302-0.tar.gz wget http://releases.linaro.org/platform/linaro-n/hwpacks/alpha-3/hwpack_linaro-vexpress_20110302-0_armel_supported.tar.gz You can download another hwpack for omap3, i.mx51, pandaboard, beagleboard, ST U8500, etc.. if needed at http://releases.linaro.org/platform/linaro-n/hwpacks/alpha-3/ Download the source, extract it, then configure, build and install qemu linaro: wget http://launchpad.net/qemu-linaro/trunk/2011.03-1/+download/qemu-linaro-0.14.50-2011.03-1.tar.gz tar xzvf qemu-linaro-0.14.50-2011.03-1.tar.gz cd qemu-linaro-0.14.50-2011.03-1 ./configure –prefix=/usr make sudo make install Make sure the prefix is set to /usr in order to overwrite any previous version of Qemu (It installed qemu linaro in /usr/local/ instead in my case). Failure to do so may generate the following error during linaro-media-create: qemu: fatal: cp15 insn ee1d6f70 Instead of compiling qemu, you can install qemu-linaro with apt-get (this will avoid possible version issues between linaro-media-create and qemu): sudo add-apt-repository ppa:linaro-maintainers/tools […]

Emulate an ARM Plaform with QEMU on Ubuntu 10.10

When developing software for embedded systems, you may need to support multiple architectures such as  arm, mips, x86, powerpc, alpha etc.. but you may not have the hardware required on hand to test them. This is where QEMU – a processor emulator – comes to the rescue. In a way, QEMU is similar to VirtualBox, VMWare or Citrix Xendeskop except it can support multiple architectures. I’ll show how to run Debian Lenny ARMEL in QEMU on a computer running Ubuntu 10.10 (aka Ubuntu Maverick Meerkat). QEMU (Qemu-kvm) Installation First install qemu-kvm and qemu-kvm-extras (the latter contains qemu-system-arm): sudo apt-get install qemu-kvm qemu-kvm-extras Let’s check qemu version: jaufranc@CNX-TOWER:~/edev$ qemu –version QEMU PC emulator version 0.12.5 (qemu-kvm-0.12.5), Copyright (c) 2003-2008 Fabrice Bellard Debian ARM Installation in QEMU Create a directory to store the required files for the emulator and  download the Debian Lenny ARMEL kernel (vmlinuz) and debian installer rootfs (initrd.gz): mkdir […]

Folders and Files Comparison in Linux with Meld

Beyond Compare and Winmerge are tools that can be used to compare files in Windows, but the latter is not available in Linux and the former is only available as a commercial application. One alternative is to use Meld, a diff and merge tool for Linux. This open source program is a GUI for diff2 and diff3 written using pygkt toolit based on Python, Glade and GTK+. This is not as powerful as the two programs aforementioned, but still very useful. It can also compare 3 files at the same time. To install it in ubuntu: sudo apt-get install meld It will still allow you to compare files, directory and merge changes. The file comparison merge function is a little confusing at first, but after a while you’ll get used to it. Meld can also support version control comparison with CVS, SVN, GIT, Bazaar-ng or Mercurial. Jean-Luc Aufranc (CNXSoft)Jean-Luc started […]

Cross-compiling Python for MIPS and ARM Platforms

Python programming language is used in several open source projects such as Sugar OS and Xibo. Let’s see if we can cross-compile it in Ubuntu 10.10 using a mips compiler. I’ll use the instructions given at http://randomsplat.com/id5-cross-compiling-python-for-embedded-linux.html. Let’s download Python 2.7.1 first and extract the source code:

Then run the following command in Python-2.7.1 in order to build some tools for the host:

There is no patch for Python 2.7.1 cross-compilation in the link above, so let’s just try to configure and build it:

If we don’t use a patch the first error is:

So I used some older patch to create a new patch: http://www.cnx-software.com/patch/python-2.7.1-cross-compile.patch. You can download it an apply it as follows:

And repeat the step above to configure and cross-compile Python for mips. Finally install Python in ~/Python-2.7.1/install for example:

After that copy all necessary files in ~/Python-2.7.1/install to your […]

Nufront ARM Cortex-A9 Laptop running Ubuntu at CES 2011

Nufront (新岸线) showcased their minipc based on Nusmart 2816 at Techcon 2010, they are now back at CES 2011 to show off their laptop reference designs. They provide two laptop designs with 10″ and a 14″ displays. The mother board is the same for both devices, only the casing changes to accommodate the display. The laptops runs Ubuntu and Android 2.2. They will also support some undisclosed operating system(s) later on (It should be Windows 8 and/or Chrome OS).  The processor is a dual core Cortex A9 running at 2GHz, so I suppose this is the Nusmart 2816. The laptop will have 1 or 2 GB RAM depending on the configuration. Nufront said those laptops should be available within 6 months. No indication of price has been given. 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 […]

Detecting Code Duplicates in C/C++ with CCFinderX

Over time, as your source code repository and software team(s) grow, you may have more and more code that just does the same thing. This is obviously not desirable since several persons work on code doing the same thing, so you just pay twice for the cost for development and debugging. To avoid this issue, proper team communication and management must be in place (e.g. discourage copy/paste of source code, use a common source control repository..). However, it might be difficult to always detect where the code duplicates are. Luckily, code duplication analysis tools such as CCFinderX are here to help. As described on CCFinderX website: CCFinderX is a code-clone detector, which detects code clones (duplicated code fragments) from source files written in Java, C/C++, COBOL, VB, C#. CCFinderX is a major version up of CCFinder, and it has been totally re-designed and re-implemented from scratch. Its new design and […]

Sharing Thunderbird Emails between Windows and Linux

I’ve used Windows XP with Linux in a virtual machine (VirtualBox) for a while. But since this proved to be very slow,  I’ve just installed Ubuntu (dual boot mode) in my PC. However, I wanted to be able to use the same Thunderbird profile in both OS. So here’s how to do: After installating Ubuntu, open a terminal window and: 1. Install Thunderbird: sudo apt-get install thunderbird 2. Start Thunderbird in Profile Manager mode: thunderbird -profilemanager Then create a new profile (any name) and click on “Change folder” and point it to your Thunderbird profile in Windows (Something like: Documents and Settings\username\Application Data\Thunderbird\Profiles\abcdef.default). You may delete the default profile and start Thunderbird. You should then see all your emails and RSS feeds in Thunderbird and receive and send emails in Linux as you used to in Windows XP. Jean-Luc Aufranc (CNXSoft)Jean-Luc started CNX Software in 2010 as a part-time endeavor, […]

UP 7000 x86 SBC