Skip to content
dingetje edited this page Feb 11, 2011 · 9 revisions

Linux

This page describes the steps to setup a development environment on Ubuntu for LK8000. For other linux distributions these steps are similar.

Cross compiler

LK8000 needs a cross compiler called arm-mingw32ce in order to compile the PNA and Pocket PC versions of LK8000.

Using pre-compiled binary distribution

  1. Go to http://cegcc.sourceforge.net/ and download the older version (0.55) of cegcc (mandriva-cegcc-mingw32ce-0.55.tar.gz).
  2. Extract the tarball to the root of your disk, the package installs in the /opt/mingw32ce folder.
  3. Add /opt/mingwce32/bin to your PATH setting.
  4. Download this patched shlobj.h and overwrite the existing file in /opt/mingw32ce/arm-mingw32ce/include.
  5. Test the installation by running the makeall script for LK8000, this should result in a PNA binary.

Building mingw32ce from sources

Since you may have problems running pre-compiled binary because of incompatible library dependencies, it can be necessary to compile mingw32ce yourself.

  1. Checkout cegcc to some directory on the disk
    svn checkout https://cegcc.svn.sourceforge.net/svnroot/cegcc/tags/cegcc-0.55 cegcc-0.55
    Version 0.55 is currently used by most developers, but also trunk@1449 works fine (although it generates 2 times larger executable)
  2. Make build directory
    mkdir build
  3. Build mingw32ce (it will be installed into /opt/mingw32ce-0.55)
    ../src/scripts/build-mingw32ce.sh --prefix=/opt/mingw32ce-0.55
  4. Add /opt/mingw32ce-0.55/bin to your PATH setting.

Correcting shlobj.h

In shlobj.h is incorrect declaration of SHGetSpecialFolderPath(). Replace /opt/mingw32ce-0.55/arm-mingw32ce/include/shlobj.h with patched shlobj.h.

MinGW compiler

In order to compile the PC version of LK8000 the mingw32 (Minimalist GNU for Windows) package needs to be installed. This package is usually available as an add-on package for most modern Linux distributions, but of course it's also possible to build from sources.

When you install as add-on package (i.e. apt-get install mingw32), it may be required to make the following changes in the Makefile of LK8000:

ifeq ($(CONFIG_PC),y)
TCPATH :=i586-mingw32msvc-