Sign in Join
Wiki copytemporary

Revision 3 of 3, by WayneSherman on 5-22-2023. The page as it is now.

LAMW

https://upload.wikimedia.org/wikipedia/commons/thumb/d/d7/Android_robot.svg/50px-Android_robot.svg.png

This article applies to Android only.

See also: Multiplatform Programming Guide

LAMW

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

https://upload.wikimedia.org/wikipedia/commons/d/d8/Nuvola_apps_ktip.png Note: Install here: "C:\laz4android2.0.12" (not "Program Files" !!!)

Install * LAMW

https://upload.wikimedia.org/wikipedia/commons/d/d8/Nuvola_apps_ktip.png 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 toInfrastructure.

LAMW Manager (Linux and Windows)

https://upload.wikimedia.org/wikipedia/commons/d/d8/Nuvola_apps_ktip.png 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

https://upload.wikimedia.org/wikipedia/commons/d/d8/Nuvola_apps_ktip.png Note: Install here: "C:\lazarus2.0.12" (not "Program Files" !!!)

Install * LAMW

https://upload.wikimedia.org/wikipedia/commons/d/d8/Nuvola_apps_ktip.png 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"

https://upload.wikimedia.org/wikipedia/commons/d/d8/Nuvola_apps_ktip.png 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

https://upload.wikimedia.org/wikipedia/commons/d/d8/Nuvola_apps_ktip.png 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

https://upload.wikimedia.org/wikipedia/commons/d/d8/Nuvola_apps_ktip.png 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

https://upload.wikimedia.org/wikipedia/commons/d/d8/Nuvola_apps_ktip.png 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 ..."

https://upload.wikimedia.org/wikipedia/commons/d/d8/Nuvola_apps_ktip.png 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"

https://upload.wikimedia.org/wikipedia/commons/d/d8/Nuvola_apps_ktip.png Note: Path to Workspace" is your projects folder

https://upload.wikimedia.org/wikipedia/commons/d/d8/Nuvola_apps_ktip.png Note: Accept "default" options! (but pay attention to the * signage)

"Save" unit1 as/where suggested

https://upload.wikimedia.org/wikipedia/commons/d/d8/Nuvola_apps_ktip.png 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 the Internet Archive kept it on 2025-01-17, last changed on 2023-05-23. 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.