WinCE port
From Free Pascal wiki
The WinCE port is under development. Currently only WinCE on ARM and i386 (WinCE emulator) is supported.
Status
The 2.1.x compiler has compiler support for arm-wince and a partial working system unit.
Building
- You need cross binutils for arm-wince, get them from ftp://ftp.freepascal.org/pub/fpc/contrib/cross/arm-wince-binutils.zip for Win32.
- Extract them to some dir in the path on your machine.
- Prepend the executable from the archive with a arm-wince- i.e. as.exe becomes arm-wince-as.exe.
- Get the 2.1 source repository from SVN: http://www.freepascal.org/develop.html#svn
- Go to fpc/compiler and execute make cycle CPU_TARGET=arm OS_TARGET=wince
At a certain point this breaks when the native compiler is compiled. This doesn't hurt, because you usually don't need the native compiler.
You should end with the units compiled to fpc/rtl/units/arm-wince and a ppccrossarm.exe in fpc/compiler. Copy them to locations fitting your fpc installation.
TODO
- Converting PocketPC SDK headers to Windows unit is needed. It is main show-stopper now.
Documentation
WinCE port notes
- chdir is not supported (due to OS design).
- WinCE is unicode OS. All string parameters to API calls must be PWideChar.