LAMW
(Android only)

LAMW: Lazarus Android Module Wizard is a wizard to create JNI Android loadable module (.so) and Android Apk using Lazarus/Free Pascal.
Features:
Native Android GUI
AppCompat and Material Design supported!
RAD! Form designer and drag&drop component development model!
More than 140 components!
Github Page: https://github.com/jmpessoa/lazandroidmodulewizard
Get Lazarus for Android
Laz4Android 2.0.12 (Windows)
All cross-android compilers already installed!
arm-android/aarch64-android/i386-android/x86_64-android/jvm-android
How to
Install * Laz4Android 2.0.12
Note: Install here: "C:\laz4android2.0.12" (not "Program Files" !!!)
Install * LAMW
Note: Download LAMW and unzip it in some folder (ex. "C:\laz4android2.0.12\components")
Packages installations order/sequence:
tfpandroidbridge_pack.lpk (in "..../android_bridges" folder)
lazandroidwizardpack.lpk (in ""..../android_wizard" folder)
amw_ide_tools.lpk (in "..../ide_tools" folder)
Go to Infrastructure.
LAMW Manager (Linux and Windows)
Note: All in One! LAMW Manage produces a complete Lazarus for Android environment by automating the step Infrastructure!
Install * LAMW Manager Installer for Linux
Install * LAMW Manager Installer for Windows
Install LAMW using fpcupdeluxe (Linux and Windows)
How to install on Linux (FPCUPdeluxe + LAMW)
How to install on Windows (FPCUPdeluxe + LAMW)
Do It Yourself! (Windows)
Install * Lazarus 2.0.12
Note: Install here: "C:\lazarus2.0.12" (not "Program Files" !!!)
Install * LAMW
Note: Download LAMW and unzip it in some folder (ex. "C:\lazarus2.0.12\components")
Packages installations order/sequence:
tfpandroidbridge_pack.lpk (in "..../android_bridges" folder)
lazandroidwizardpack.lpk (in ""..../android_wizard" folder)
amw_ide_tools.lpk (in "..../ide_tools" folder)
Install * FPC source code (trunk)
Download FPC source code and unzip it in some folder and point up the source path in next step
Go to Lazarus menu "Tools" >> "[LAMW] Android Module Wizard" >> "Build FPC Cross Android"
Note: repeat the "Build and install" process once for each architecture
(x) Armv7a + Soft (android 32 bits << tested!)
Build
Install
(x) Aarch64 (android 64 bits << tested!)
Build
Install
Note: After "build" and "install" the cross-compilers and after to do all Infrastructure go to Using LAMW and try to create your first [New] LAMW project!
If you get an error "Fatal: Cannot find unit system used by fcllaz of package FCL" when trying "Run" >> "Build" your project then go to "fpc.cfg" (ex. "C:\lazarus2.0.12\fpc\3.2.0\bin") and:
change:
#searchpath for units and other system dependent things
-FuC:\lazarus2.0.12\fpc\$FPCVERSION/units/$fpctarget
-FuC:\lazarus2.0.12\fpc\$FPCVERSION/units/$fpctarget/*
-FuC:\lazarus2.0.12\fpc\$FPCVERSION/units/$fpctarget/rtl
to:
#searchpath for units and other system dependent things
-FuC:\lazarus2.0.12\fpc\3.2.0/units/$fpctarget
-FuC:\lazarus2.0.12\fpc\3.2.0/units/$fpctarget/*
-FuC:\lazarus2.0.12\fpc\3.2.0/units/$fpctarget/rtl
And go to Lazarus IDE menu "Tools" >> "Options" >> "Environment" >> [FPC Source]
change:
$(LazarusDir)fpc\$(FPCVer)\source
to:
$(LazarusDir)fpc\3.2.0\source
Infrastructure
Note: Only for non-users of LAMW Manager!
Get Java JDK
Install * Java JDK 8
Get Android NDK
Install * r19c
Get Ant builder
Install * Ant
Simply extract the zip file to a convenient location...
Get Gradle builder
Install * Gradle 6.6.1
Note: Use the option "extract here" to produce the folder "gradle-6.6.1" in a convenient location...
Get Android SDK
Install * r25.2.5-windows
Install * r25.2.5-linux
Install * r25.2.5-macosx
How to
unpacked/install to a "sdk" folder
open a command line terminal and go to folder "sdk/tools"
run the command >> "android update sdk" to open a GUI "SDK Manager"
Go to [Tools] and keep "as is"
Android SDK Tools (installed)
(x) Android SDK Platform-Tools
(x) Android SDK Build-Tools 29.0.3 (and others more recent)
Go to [Android R] and uncheck all!
Go to [Android 10 API 29] uncheck all and check only
(x)SDK Platform
Go to [Extras] and check:
(x)Android Support Repository
(x)Google USB Drive (Windows only...)
(x)Google Repository
(x)Google Play Services
[Install 7 package!]
Using LAMW
Configure Paths
Lazarus IDE menu "Tools" >> "[LAMW] Android Module Wizard" >> "Paths Settings ..."
Note: MacOs: path to Java JDK auto setting!
Create and Run your first Android Apk
How to
From Lazarus IDE select "Project" >> "New Project"
From displayed dialog select "[LAMW] GUI Android Module" and "Ok"
Fill the form/dialog fields and "Ok"
Note: Path to Workspace" is your projects folder
Note: Accept "default" options! (but pay attention to the * signage)
"Save" unit1 as/where suggested
Note: Search your project folder... you will find many treasures there! (look for lazarus project in ".../jni" folder)
From Lazarus IDE select "Run" >> "Build"
Success! Your system is up to produce your first Android Apk!
Configure your phone device to debug mode and plug it to the computer usb port
From Lazarus IDE select "Run" >> "[LAMW] Build Apk and Run"
Congratulations! You are now an Android Developer!
Other references
Tutorial: My First "Hello Word" App
From the Free Pascal wiki, page "LAMW", as it stood on 2023-05-22 after a change by WayneSherman, out of the wiki's dump of 2024-05-26. Copyright stays with the author who wrote it, according to the old wiki's Licensing page. If you have concerns about this material, message the admin.