Currently support for android target is present in the trunk (development) version 2.7.1 of FPC.
You need to download and install Android NDK in order to compile programs for the android target. Download Android NDK using this link: http://developer.android.com/tools/sdk/ndk/index.html
Extract it to some folder.
Check out the latest trunk sources of FPC using the following command:
svn co FPC http://svn.freepascal.org/svn/fpc/trunk
Now you have the compiler sources in the FPC sub-folder.
Building cross compiler
You need to have working installation of FPC 2.6.x compiler in order to create the cross-compiler. This tutorial describes how to build the cross-compiler on Windows, but it can be used for any system with small obvious modifications.
Assume the following paths:
- Android NDK path:
C:\Program Files\Android SDK\android-ndk-r8d
- FPC svn sources path:
- The cross-compiler installation path:
Add path to Android binutils to the PATH environment variable. In this tutorial the path is
C:\Program Files\Android SDK\android-ndk-r8d\toolchains\arm-linux-androideabi-4.7\prebuilt\windows\bin
First you need to build the latest version of the fmcmake support program.
To do that cd to the following folder:
Then execute the command:
Now cd to the root of FPC sources folder:
Execute the following command:
make clean all install OS_TARGET=android CPU_TARGET=arm CROSSOPT="-O2 -g-" CROSSINSTALL=1 INSTALL_PREFIX=C:\Develop\FPC\pp FPCMAKE=C:\Develop\FPC\FPC\utils\fpcm\fpcmake
After that you should have the cross-compiler and units installed in folder
Now create a new
fpc.cfg file in folder
C:\Develop\FPC\pp\bin\i386-win32 and paste into it the following text:
- ifdef android
- ifdef cpuarm
-FlC:\Program Files\Android SDK\android-ndk-r8d\platforms\android-14\arch-arm\usr\lib