The embedded target is still under development and only a few controllers are supported. Nevertheless, it's possible to create programs for embedded arm devices. The embedded target targets systems without any operating system and typically several kBs of RAM and several dozens of kB of flash. A typical target is the LPC family of NXP with popular members like the LPC2124 with 16 kB RAM and 256 kB flash using the ARM7 instruction set.
- usefull support is only available in 2.3.1 from svn
- currently only arm-embedded is supported
- supported controllers are limited to NXP LPC controllers
Get latest FPC from svn:
svn co http://svn.freepascal.org/svn/fpc/trunk fpc
Get arm-embedded binutils.
For windows, they are available at http://svn.freepascal.org/svn/fpcbuild/binaries/i386-win32. You can either checkout the whole directory with or download only arm-embedded-ar.exe, arm-embedded-as.exe, arm-embedded-ld.exe, arm-embedded-strip.exe, arm-embedded-objdump.exe and arm-embedded-objcopy.exe manually. Put these utils in a directory included in your path.
Build FPC for arm-embedded:
cd fpc make clean buildbase installbase CROSSINSTALL=1 OS_TARGET=embedded CPU_TARGET=arm
This builds only the compiler and the rtl instead of the whole FPC. Because of the limited capabilities of the embedded systems supposed to be used, building all packages is not usefull.