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 […]

OLPC XO 1.75 Hardware, Firmware and Software

OLPC demo’ed their 3rd generation laptop – OLCP XO 1.75 – based on Marvell Armada 610 at CES 2011. The good thing about this platform is that they opened most of it including the hardware, the software and for the first time the firmware. However, I found out it’s not so easy to find the hardware / software development information and source on the OLPC site, so I’ve decided to make a summary and provide links to the hardware, firmware and software for OLPC XO 1.75. OLPC XO 1.75 Hardware The XO-1.75 is powered by Marvell Armada 610 CPU (88AP610) with an ARM core clocked at 1Ghz. It has 1GB DDR3 SDRAM, 4GiB NAND Flash, a TFT display, an SD Card slot, Wi-Fi,  a few USB ports and a camera. I believe the touchscreen is not part of the current hardware, but the block diagram below should be close to […]