Overview
Features
Supported Platforms
Content of 'wince' directory
Building GDAL for Windows CE using Microsoft Visual C++ 2005
Enable PROJ.4 support
wince_building_geos
How can I help?
This document is devoted to give some overview of the GDAL port for Windows CE operating system.
Currently, from version 1.4.0, GDAL includes following features for Windows CE platform:
GDAL for Windows CE has been tested on following versions of Windows CE:
Supported compilers for Windows CE operating system:
Microsoft eMbedded Visual C++ 4.0
Active content:
Requirements
External dependencies
There is only one external dependency required to build GDAL for Windows CE. This dependency is WCELIBCEX library available to download from:
http://sourceforge.net/projects/wcelibcex
You can download latest release - wcelibcex-1.0 - or checkout sources directly form SVN. In both cases, you will be provided with project file for Visual C++ 2005.
Download GDAL 1.4.0 release or directly from CVS
Go to http://www.gdal.org/download.html and download ZIP package with GDAL 1.4.0. You can also checkout sources directly from SVN.
For this guidelines, I assume following directories structure:
C:\dev\gdal-1.4.0 C:\dev\wcelibcex-1.0
Projects configuration
Open gdalce_dll.sln project in Visual C++ 2005 IDE
According to the paths presented in step 3, you should load following file:
C:\dev\gdal-1.4.0\wince\msvc80\gdalce_dll\gdalce_dll.sln
Add WCELIBCEX project to gdalce_dll.sln solution
Go to File -> Add -> Existing Project, navigage and open following file:
C:\dev\wcelibcex-1.0\msvc80\wcelibcex_lib.vcproj
Configure path to WCELIBCEX source:
C:\dev\wcelibcex-1.0\src
Ready to build GDAL for Windows CE
Go to Build and select Build Solution
After a few minutes, you should see GDAL DLL ready to use. For example, when Pocket PC 2003 SDK is used and Debug configuration requested, all output files are located under this path:
C:\dev\gdal-1.4.0\wince\msvc80\gdalce_dll\Pocket PC 2003 (ARMV4)\Debug
There, you will find following binaries:
PROJ.4 support is optional.
In the CVS repository of PROJ.4, there are available project files for Visual C++ 2005 for Windows CE.
It is recommended to read README.txt file from wince\msvc80 directory in PROJ.4 sources tree. There, you will find instructions how to build PROJ.4 without attaching its project to gdalce_dll.sln. Then you can just add proj.dll and proj_i.lib to linker settings of gdalce_dll.vcproj project.
Below, you can find instructions how to add projce_dll.vcproj project directly to gdalce_dll.sln and build everything together.
Go to http://proj.maptools.org and learn how to checkout PROJ.4 source from the CVS
Checkout sources to prefered location, for example:
C:\dev\proj
Add projce_dll.vcproj project to gdalce_dll.sln solution
Go to File -> Add -> Existing Project, navigage and open following file:
C:\dev\proj\wince\msvc80\projce_dll\projce_dll.vcproj
Open Property Manager as described here, open Property Page for gdalce_common, and edit macro named as PROJ_DIR.
Change value of the PROJ_DIR macro to:
C:\dev\proj
Don't close the Property Manager yet.
Configure path to WCELIBCEX source:
C:\dev\wcelibcex-1.0\src
Follow instructions explained here and add projce_dll.vcproj as a dependency for gdalce_dll.vcproj
Update proj_config.h file:
Go to C:\dev\proj\src and rename proj_config.h.wince to proj_config.h.
Ready to build GDAL for Windows CE
Go to Build and select Build Solution
Similarly to explanation above in step 5 for GDAL, binaries for PROJ.4 for Windows CE can be found here:
C:\dev\proj\wince\msvc80\projce_dll\Pocket PC 2003 (ARMV4)\Debug
There, you can find following binaries:
After all, put proj.dll to the same directory on device where you copied gdalce.dll and your application which uses GDAL.
I'd like to encourage everyone interested in using GDAL on Windows CE devices to help in its development. Here is a list of what you can do as a contribution to the project:
There is also wince\TODO file where you can find list of things we are going to do.
If you have any comments or questions, please sent them to the gdal-dev@lists.maptools.org mailing list or directly to me on mateusz@loskot.net
$Id: wince_port.dox 11911 2007-08-18 17:31:46Z mloskot $