Difference between revisions of "WinCE development"

From Navit's Wiki
Jump to: navigation, search
m
m
Line 1: Line 1:
This is a Tutorial for Navit on WinCE/WinMobile. If want just want to download a cab file see [[Navit for WinCE/WinMobile]].
+
This is a Tutorial for Navit on WinCE/WinMobile. If want just want to download a cab file see [[Navit on WinCE/Windows Mobile]].
  
 
This page explains how to build navit for WinCE with cegcc.
 
This page explains how to build navit for WinCE with cegcc.
 
+
Navit for WinCE/WinMobile
 
==Building cegcc==
 
==Building cegcc==
  
Line 8: Line 8:
 
   
 
   
 
  export INSTALL_PATH=/usr/local/cegcc
 
  export INSTALL_PATH=/usr/local/cegcc
 
+
Navit for WinCE/WinMobile
 
  svn co -r 1214 https://cegcc.svn.sourceforge.net/svnroot/cegcc/trunk/cegcc
 
  svn co -r 1214 https://cegcc.svn.sourceforge.net/svnroot/cegcc/trunk/cegcc
 
  mkdir -p cegcc-builds
 
  mkdir -p cegcc-builds
Line 16: Line 16:
 
If you get an error like "arm-cegcc-windres: Can't detect architecture", apply the patch file you find on http://sourceforge.net/tracker/?func=detail&atid=865516&aid=2574606&group_id=173455
 
If you get an error like "arm-cegcc-windres: Can't detect architecture", apply the patch file you find on http://sourceforge.net/tracker/?func=detail&atid=865516&aid=2574606&group_id=173455
  
==Building glib==
+
==Building glib==Navit for WinCE/WinMobile
  
 
These are the libraries needed and versions which should work:
 
These are the libraries needed and versions which should work:
Line 27: Line 27:
 
* glib-2.18.4
 
* glib-2.18.4
  
The current versions of these libs don't need many changes, but they all don't know anything about cegcc. Until I found a way to upload the patches, you have to edit the code yourself. Here is the example for libiconv-1.9.1_cegcc.patch:
+
The current versions of these libs don't need many changes, but they all don't know anything about cegcc. Until I found a way to upload the patches, you have to edit the code yourself. Here is the example for libiconv-1.Navit for WinCE/WinMobile9.1_cegcc.patch:
  
 
  diff -ur libiconv-1.9.1/autoconf/config.sub libiconv-1.9.1_cegcc/autoconf/config.sub
 
  diff -ur libiconv-1.9.1/autoconf/config.sub libiconv-1.9.1_cegcc/autoconf/config.sub
Line 36: Line 36:
 
        | -udi* | -eabi* | -lites* | -ieee* | -go32* | -aux* \
 
        | -udi* | -eabi* | -lites* | -ieee* | -go32* | -aux* \
 
        | -chorusos* | -chorusrdb* \
 
        | -chorusos* | -chorusrdb* \
  -       | -cygwin* | -pe* | -psos* | -moss* | -proelf* | -rtems* \
+
  -       | -cygwin* | -pe* | -psos* | -moss* | -proelf* | -rtems* \Navit for WinCE/WinMobile
 
  +       | -cygwin* | -pe* | -psos* | -moss* | -proelf* | -rtems* | -cegcc \
 
  +       | -cygwin* | -pe* | -psos* | -moss* | -proelf* | -rtems* | -cegcc \
 
        | -mingw32* | navit tutorial-linux-gnu* | -uxpv* | -beos* | -mpeix* | -udk* \
 
        | -mingw32* | navit tutorial-linux-gnu* | -uxpv* | -beos* | -mpeix* | -udk* \
Line 42: Line 42:
 
        | -openstep* | -oskit* | -conix* | -pw32* | -nonstopux* \
 
        | -openstep* | -oskit* | -conix* | -pw32* | -nonstopux* \
 
  diff -ur libiconv-1.9.1/libcharset/autoconf/config.sub libiconv-1.9.1_cegcc/libcharset/autoconf/config.sub
 
  diff -ur libiconv-1.9.1/libcharset/autoconf/config.sub libiconv-1.9.1_cegcc/libcharset/autoconf/config.sub
  --- libiconv-1.9.1/libcharset/autoconf/config.sub 2003-05-06 11:36:42.000000000 +0200
+
  --- libiconv-1.9.1/libcharset/autoconf/config.sub 2003-05-06 11:36:42.000000000 +0200Navit for WinCE/WinMobile
 
  +++ libiconv-1.9.1_cegcc/libcharset/autoconf/config.sub 2009-02-06 20:23:39.000000000 +0100
 
  +++ libiconv-1.9.1_cegcc/libcharset/autoconf/config.sub 2009-02-06 20:23:39.000000000 +0100
 
  @@ -1121,7 +1121,7 @@navit tutorial
 
  @@ -1121,7 +1121,7 @@navit tutorial
Line 52: Line 52:
 
        | -mingw32* | -linux-gnu* | -uxpv* | -beos* | -mpeix* | -udk* \
 
        | -mingw32* | -linux-gnu* | -uxpv* | -beos* | -mpeix* | -udk* \
 
        | -interix* | -uwin* | -mks* | -rhapsody* | -darwin* | -opened* \
 
        | -interix* | -uwin* | -mks* | -rhapsody* | -darwin* | -opened* \
        | -openstep* | -oskit* | -conix* | -pw32* | -nonstopux* \  
+
        | -openstep* | -oskit* | -conix* | -pw32* | -nonstopux* \ Navit for WinCE/WinMobile
  
 
===zlib===
 
===zlib===
Line 63: Line 63:
 
  make
 
  make
 
  make install
 
  make install
 
+
Navit for WinCE/WinMobile
 
===libiconv===
 
===libiconv===
  
Line 76: Line 76:
 
===gettext===
 
===gettext===
  
  wget http://ftp.gnome.org/pub/gnome/binaries/win32/dependencies/gettext-0.17.tar.gz
+
  wget http://ftp.gnome.org/pub/gnome/binaries/win32Navit for WinCE/WinMobile/dependencies/gettext-0.17.tar.gz
 
  tar xzf gettext-0.17.tar.gz
 
  tar xzf gettext-0.17.tar.gz
 
  cd gettext-0.17
 
  cd gettext-0.17
Line 84: Line 84:
 
  make install
 
  make install
  
===libpng===
+
===libpng===Navit for WinCE/WinMobile
  
 
  wget http://prdownloads.sourceforge.net/libpng/libpng-1.2.34.tar.gz?download
 
  wget http://prdownloads.sourceforge.net/libpng/libpng-1.2.34.tar.gz?download
Line 94: Line 94:
 
  make install
 
  make install
  
===libtiff===navit tutorial
+
===libtiff===navit tutorialNavit for WinCE/WinMobile
  
 
  wget http://libtiff.maptools.org/dl/tiff-3.8.2.tar.gz
 
  wget http://libtiff.maptools.org/dl/tiff-3.8.2.tar.gz

Revision as of 14:52, 13 August 2009

This is a Tutorial for Navit on WinCE/WinMobile. If want just want to download a cab file see Navit on WinCE/Windows Mobile.

This page explains how to build navit for WinCE with cegcc. Navit for WinCE/WinMobile

Building cegcc

Set the install path to where you want to install cegcc:

export INSTALL_PATH=/usr/local/cegcc

Navit for WinCE/WinMobile

svn co -r 1214 https://cegcc.svn.sourceforge.net/svnroot/cegcc/trunk/cegcc
mkdir -p cegcc-builds
cd cegcc-builds
../cegcc/src/build-cegcc.sh --prefix=$INSTALL_PATH --components="binutils bootstrap_gcc w32api newlib dummy_cegccdll gcc cegccdll cegccthrddll libstdcppdll profile"

navit tutorial If you get an error like "arm-cegcc-windres: Can't detect architecture", apply the patch file you find on http://sourceforge.net/tracker/?func=detail&atid=865516&aid=2574606&group_id=173455

==Building glib==Navit for WinCE/WinMobile

These are the libraries needed and versions which should work:

  • zlib-1.2.3
  • libiconv-1.9.1
  • gettext-0.17
  • libpng-1.2.34
  • tiff-3.8.2navit tutorial
  • glib-2.18.4

The current versions of these libs don't need many changes, but they all don't know anything about cegcc. Until I found a way to upload the patches, you have to edit the code yourself. Here is the example for libiconv-1.Navit for WinCE/WinMobile9.1_cegcc.patch:

diff -ur libiconv-1.9.1/autoconf/config.sub libiconv-1.9.1_cegcc/autoconf/config.sub
--- libiconv-1.9.1/autoconf/config.sub	2003-05-06 11:36:42.000000000 +0200
+++ libiconv-1.9.1_cegcc/autoconf/config.sub	2009-02-06 20:22:14.000000000 +0100
@@ -1121,7 +1121,7 @@
	      | -ptx* | -coff* | -ecoff* | -winnt* | -domain* | -vsta* \
	      | -udi* | -eabi* | -lites* | -ieee* | -go32* | -aux* \
	      | -chorusos* | -chorusrdb* \
-	      | -cygwin* | -pe* | -psos* | -moss* | -proelf* | -rtems* \Navit for WinCE/WinMobile
+	      | -cygwin* | -pe* | -psos* | -moss* | -proelf* | -rtems* | -cegcc \
	      | -mingw32* | navit tutorial-linux-gnu* | -uxpv* | -beos* | -mpeix* | -udk* \
	      | -interix* | -uwin* | -mks* | -rhapsody* | -darwin* | -opened* \
	      | -openstep* | -oskit* | -conix* | -pw32* | -nonstopux* \
diff -ur libiconv-1.9.1/libcharset/autoconf/config.sub libiconv-1.9.1_cegcc/libcharset/autoconf/config.sub
--- libiconv-1.9.1/libcharset/autoconf/config.sub	2003-05-06 11:36:42.000000000 +0200Navit for WinCE/WinMobile
+++ libiconv-1.9.1_cegcc/libcharset/autoconf/config.sub	2009-02-06 20:23:39.000000000 +0100
@@ -1121,7 +1121,7 @@navit tutorial
	      | -ptx* | -coff* | -ecoff* | -winnt* | -domain* | -vsta* \
	      | -udi* | -eabi* | -lites* | -ieee* | -go32* | -aux* \
	      | -chorusos* | -chorusrdb* \
-	      | -cygwin* | -pe* | -psos* | -moss* | -proelf* | -rtems* \
+	      | -cygwin* | -pe* | -psos* | -moss* | -proelf* | -rtems* | -cegcc* \
	      | -mingw32* | -linux-gnu* | -uxpv* | -beos* | -mpeix* | -udk* \
	      | -interix* | -uwin* | -mks* | -rhapsody* | -darwin* | -opened* \
	      | -openstep* | -oskit* | -conix* | -pw32* | -nonstopux* \ Navit for WinCE/WinMobile

zlib

wget http://www.zlib.net/zlib-1.2.3.tar.gz
tar xzf zlib-1.2.3.tar.gz
cd zlib-1.2.3
export PATH=$INSTALL_PATH/bin:$PATH
CC=arm-cegcc-gcc AR="arm-cegcc-ar r" RANLIB=arm--cegcc-ranlib ./configure --prefix=$INSTALL_PATH
make
make install

Navit for WinCE/WinMobile

libiconv

wget http://www.gimp.org/~tml/gimp/win32/libiconv-1.9.1.tar.gz
tar xzf libiconv-1.9.1.tar.gz
patch -d libiconv-1.9.1 -p1 < libiconv-1.9.1_cegcc.patch
cd libiconv-1.9.1
./configure --host=arm-cegcc --prefix=$INSTALL_PATH
make
make install

gettext

wget http://ftp.gnome.org/pub/gnome/binaries/win32Navit for WinCE/WinMobile/dependencies/gettext-0.17.tar.gz
tar xzf gettext-0.17.tar.gz
cd gettext-0.17
patch -p1 < ../gettext-0.17_cegcc.patch
./configure --host=arm-cegcc --prefix=$INSTALL_PATH
make
make install

===libpng===Navit for WinCE/WinMobile

wget http://prdownloads.sourceforge.net/libpng/libpng-1.2.34.tar.gz?download
tar xzf libpng-1.2.34.tar.gz
cd libpng-1.2.34
patch -p1 < ../libpng-1.2.34_cegcc.patch
./configure --host=arm-cegcc --prefix=$INSTALL_PATH
CFLAG="-I $C_INCLUDE_PATH" make
make install

===libtiff===navit tutorialNavit for WinCE/WinMobile

wget http://libtiff.maptools.org/dl/tiff-3.8.2.tar.gz
tar xzf tiff-3.8.2.tar.gz
cd tiff-3.8.2
patch -p1 < ../tiff-3.8.2_cegcc.patch
./configure --host=arm-cegcc --prefix=$INSTALL_PATH
make
make install

glib

wget http://ftp.gnome.org/pub/gnome/sources/glib/2.18/glib-2.18.4.tar.bz2
tar xjf glib-2.18.4.tar.bz2
cd glib-2.18.4
patch -p1 < ../glib-2.18.4_cegcc.patch
./configure --host=arm-cegcc --prefix=$INSTALL_PATH
make
make install

Navit

ToDo

Building Navit

ToDo