Cross Compiling Boost C++ Libraries for ARM

Boost provides free peer-reviewed portable C++ source libraries. Ten Boost libraries are already included in the C++ Standards Committee’s Library Technical Report and will be in the new C++11 Standard. The Boost C++ libraries are already included in popular Linux and Unix distributions such as Fedora, Debian, Ubuntu and NetBSD and are used by projects such as Python, Xibo, Civilization IV, etc.. Here are the steps to cross-compile Boost C++ libraries for arm using arm-linux-guneabi-g++: Download the source code:

Extract the source code:

Bootstrap the code:

Modify the configuration file (project-build.jam) to use the ARM toolchain by replacing the line with “using gcc” by:

Install the python development package:

Build and install the boost libraries:

This was tested in Ubuntu 11.04 (natty) and 10.04 LTS with linaro g++ toolchain. Jean-Luc Aufranc (CNXSoft)Jean-Luc started CNX Software in 2010 as a part-time endeavor, before quitting his […]

How to Transfer files between the Host and Qemu via SSH and NFS

Last week, I wrote a blog post explaining how to copy files to a qemu image by mounting the qemu image in the host. This is only useful if emulated platform does not support networking. If networking is enabled, using SSH (Secure Shell) or NFS (Network File System) is more convenient. Using SSH with Qemu To initiate the SSH connection from qemu, there is actually nothing extra to do as long as you have sshd installed and running on the host. If it is not installed simply run  sudo apt-get install openssh-shell on the host. This will install and automatically sshd. To initiate the SSH connection from the host, you’ll have to redirect the ssh port to an unknown port and start qemu as follow (for overo):

Please refer to Beagleboard Emulator in Ubuntu with Qemu for the detailed instructions on how to setup qemu to emulate beagleboard or […]

Embedded MasterClass Conference Schedule in Cambridge, UK

Embeded MasterClass will take place in Cambridge on the 5th of October 2011. This conference will give you the chance to meet with embedded systems engineers from many of the world’s leading vendors and you’ll be able to attend presentations and workshops free of charge. Here’s the presentations’ schedule for the event: Time Stream 1 Stream 2 8.30 – 9.30 Tea/Coffee – Meet the Exhibitors 9.30 – 10.15 1: Leveraging the Performance of Intel® Architectures in low power, fan-less solutions with the latest Intel® Atom™ processor-based platform. Regis Cheval CEng MIET, Intel® Atom™ Platform Application Engineer – Intel 10.30 – 11.15 2: Proving your code quality. Barry Lock – Lauterbach 3: Developing reliable embedded systems using COTS and custom processors. Michael Pont, CEO – TTE Systems 11.15 – 11.45 Coffee and Exhibition 11.45 – 12.30 4: Strategic Research Agenda. Helen Finch – Artemis and Infineon 5: Safely from Conception to […]

Tizen: Linux Based OS with HTML5 Application Programming Interfaces

Earlier this week, the Linux Foundation announced yet another new Linux-based open source operating system for mobile and consumer devices based on Web standards called Tizen. This project is backed by Intel and Samsung who have already been involved with Linux based operating systems before, respectively with MeeGo and Bada. Both companies will be part of the technical steering team. It looks like Tizen will replace Meego overtime. Meego developers blasted the move and posted  angry comments especially in relation to Qt support and the fact that all the previous work put into the project has probably gone to waste. My take is that using HTML5 is probably not such a bad ideas as many applications are currently developed in HTML5/Javascript for Chrome Webstore for example, and it could make porting those to Tizen straightforward. Tizen will support multiple device categories including: Smartphones Tablets Smart TVs Netbooks In-vehicle infotainment devices […]

How to Transfer files between Host and Qemu

I previously posted instructions to install and run nano and ARM Linux Internet Platform (ALIP) distribution images for Overo and Beagleboard on QEMU, If the image support networking, you could use ssh (install dropbear server in qemu) or nfs to transfer files between the host computer and qemu, or even run your program from the NFS share. This should be possible to do that on the Overo emulator since it support Ethernet. However, although I can access Internet, I cannot access the host via ssh as the host is in a private subnetwork (192.168.0.0) and qemu in another (10.0.2.0). We would probably have to enable bridge networking for that but the tun driver is apparently not compiled in ALIP kernel. I’ll look into that later on. [Update: Finally, we don’t need tun/tap to make this work, please read http://www.cnx-software.com/2011/10/02/how-to-transfer-files-between-host-and-qemu-via-ssh-and-nfs/ for details.] Today, I’ll just show how to mount a Qemu […]

CraneBoard: Low Cost Development Board based on TI AM3517

The CraneBoard is a low-cost, open-source hardware development platform based on the AM3517 Sitara ARM Cortex-A8 microprocessor. The CraneBoard was announced in December 2010, can be purchased for 199 USD and can be an alternative to the Beagleboard-xM. AM3517 is especially suited to industrial applications and would be a preferable platform if your project needs CAN or PoE support. The board has less RAM (256 MB vs. 512MB) and no camera port. Here are the features and specifications of the board (I highlighted the differences with Beagleboard-xM in green): AM3517 Sitara ARM Cortex-A8 – 600MHz Integrated 3D Graphics Accelerator RAM: 256 MB NAND Flash: 256MB Support for on-chip peripherals: 10/100 EMAC USB OTG utilizing on-processor PHY 3.3V I/O CAN Bus DDR2 Power over Ethernet and other power options including USB and DC MMC/SD Card Support Fully open-source four-layer PCB Fully Open Source Linux Board Support package (2.6.32) Based on existing […]

Beagleboard Emulator in Ubuntu with Qemu

If you just want to try a program on Beagleboard, but do not want (or have the means) to purchase a board, you may be able to use qemu to emulate the Beagleboard or BeableBoard-xM. I’ll details the instructions to run the Nano build (minimal kernel) and the ARM Linux Internet Platform (ALIP) distribution for Beagleboard on qemu. Please read the full post before starting the installation before there are currently some issues such as no Ethernet support. First, install or update linaro-media-create: sudo add-apt-repository ppa:linaro-maintainers/tools sudo apt-get update sudo apt-get install linaro-image-tools Then download the nano image and omap3 hardware pack: wget http://releases.linaro.org/platform/linaro-n/nano/11.08/nano-n-tar-20110823-1.tar.gz wget http://releases.linaro.org/platform/linaro-n/nano/11.08/hwpack_linaro-omap3_20110823-0_armel_supported.tar.gz Generate the image for qemu: sudo linaro-media-create –image_file beagle_sd.img –dev beagle –binary nano-n-tar-20110823-1.tar.gz –hwpack hwpack_linaro-omap3_20110823-0_armel_supported.tar.gz If you don’t have it already, get the latest qemu-linaro package from Linaro Maintainers PPA: sudo apt-get install qemu-system Check the version is correct: qemu-system-arm -version QEMU emulator version […]

UEFI Secure Boot – Windows 8 vs Linux

Last week, Microsoft showcased Windows 8 PCs with super fast boot thanks to the Unified Extensible Firmware Interface (UEFI). The latest UEFI standard, released on April 8, includes a secure boot protocol which will be required for Windows 8 clients. Secure UEFI is intended to thwart rootkit infections by requiring keys before allowing executables or drivers to be loaded onto the device. Problem is, such keys can also be used to keep the PC’s owner from wiping out the current OS and installing another option such as Linux. It all started with slide 11 in one Powerpoint presentation entitled “Delivering a secure and fast boot experience with UEFI”  presented by Arie van der Hoeven, Principal Lead Program Manager Microsoft Corporation during Build conference: Secure boot Current issues with boot Growing class of malware targets the boot path Often the only fix is to reinstall the operating system UEFI and secure […]

EmbeddedTS embedded systems design