Getting Lazarus
│
Deutsch (de) │
English (en) │
español (es) │
français (fr) │
日本語 (ja) │
polski (pl) │
português (pt) │
русский (ru) │
slovenčina (sk) │
Download and install Lazarus release version
From SourceForge
Binary releases for various platforms are available via the Lazarus Sourceforge download area.
For people who are blocked by SF, the Lazarus releases from Sourceforge are mirrored at:
Here are the Checksums.
Specific for platform
Get Lazarus for Windows - use the Sourceforge link above.
Get Lazarus for Scientific Linux
Get Lazarus for Raspberry Pi (Raspbian)
Getting a Git client
TortoiseGit client
TortoiseGit Client is for Windows only. You may download it from https://tortoisegit.org/
Git for Windows
Command line clients:
https://gitforwindows.org/ https://git-scm.com/download/win
Other clients
A GIT command line client is available from https://git-scm.com/downloads for many platforms.
On Linux, it is recommended to install git using the package management system offered by your distribution. For example:
sudo apt-get install git
Getting Lazarus from the GitLab server
Development version of Lazarus
To get Lazarus for the first time, using command line:
git clone https://gitlab.com/freepascal.org/lazarus/lazarus.git lazarus
A new directory "lazarus" is then created under the current directory.
Fixes branch of latest Lazarus release
Change into the directory created by the above git clone command and run
git switch fixes_2_2
Amending the name of the branch according to what fixes version you want. Get a list with
git branch --all
The output will contain lines similar to
remote/origin/fixes_2_2
The name of the branch is just the last part.
Update the sources later
Open a terminal/command prompt, change to the lazarus directory and type:
git switch main git pull
instead of main, you may want to specify a fixes branch.
For compiling see this.
Scripts
There are scripts for Windows and Linux to automate downloading and building Lazarus: Scripts for Lazarus
Compiling and running Lazarus
See Installing Lazarus - a detailed installation guide.
Using the command-line
Lazarus is shipped with an autogenerated Makefile (of the name "Makefile") for the gnu "make" utility.
Warning: If you also have Embarcadero (or Borland) tools installed, their "make" might conflict with gnu "make". In that case you can either delete or rename the conflicting Embarcadero binary, or remove its directory from Windows PATH, or set the path in the console before calling make:
set path=c:\pascal\3.2.0\bin\i386-win32;%path%
Warning: "make" may also fail, if you have a shell (such as sh.exe) in your path. It depends on how this shell interprets quotes and backslashes.
make allows you to compile Lazarus from command-line easily. You need to have fpc and fpc-packages installed and configured first.
To compile go to Lazarus directory in your terminal and type
make
This should rebuild LCL and Lazarus IDE with basic packages installed.
Another useful command is
make bigide
which adds the same packages that the release version has.
Then you can run Lazarus from within the same source directory with command "lazarus" (in Unix systems "./lazarus").
In case you want to run several versions, you can direct lazarus to use use specific configuration directories via the --pcp option, e.g. :
lazarus --pcp=/home/YOU/myLaz19
Make targets
make help
To see a list of available targets for make type make help. Note: "make help" exists since 1.0. Here is the output of "make help":
make help
Main targets
Without any target, target 'all' will be invoked.
all build all needed, i.e. minimal IDE, lazbuild, startlazarus.
clean deletes files that 'bigide' creates. It does not clean up all possible
targets. Clean other target: make clean LCL_PLATFORM=qt
distclean Clean all targets and common leftovers.
lazbuild build lazbuild and lcl with nogui widgetset
bigide as all, except that the IDE is built with a lot of extra packages
useride calls lazbuild to build an IDE with your active profile, requires lazbuild
install installs Lazarus under /usr/local/share/lazarus
You can change the directory by appending INSTALL_PREFIX=/some/path
Sub targets
registration build package FCL
lazutils build package LazUtils, requires registration
codetools build package CodeTools, requires lazutils
lcl build package LCLBase and LCL, requires lazutils
tools build lazres, svn2revisioninc, updatepofiles, lrstolfm,
requires LCL with nogui widgetset
basecomponents build debuggerintf, lazdebuggergdbmi, lazcontrols, synedit, ideintf
for the LCL_PLATFORM, requires lcl
bigidecomponents build many extra packages for the LCL_PLATFORM, requires basecomponents
lhelp build lhelp, requires bigidecomponents
starter build startlazarus, requires basecomponents
examples build basic examples, requires basecomponents
Note: There are more examples having their own directory
Flags:
PP=/path/to/fpc use another compiler
USESVN2REVISIONINC=0 do not update ide/revision.inc
INSTALL_PREFIX=/usr used by 'install' as path prefix
FPC_DIR=/usr/share/fpcsrc/3.0.4 used by fpcmake when regenerating Makefiles
OPT='-vwnbq -gh' append these options when calling the compiler
Usage examples:
Update svn and build a minimal IDE, startlazarus and lazbuild:
make clean
svn up
make clean all
Note: You can start lazarus with 'startlazarus'
Note: Use the IDE or lazbuild to compile your projects/packages.
Update svn and build an IDE with your last set of packages:
make clean
svn up
make clean lazbuild useride
Clean up:
There is no command to clean up a svn repository completely, but
you can use the following command under Linux/OS X:
svn status | grep '\?' | sed -e 's/\? *//' | xargs rm -r
Another possibility is to create a clean copy via the svn export command.
Install:
Note: You can use Lazarus without installing. Just start the lazarus executable.
1. Build Lazarus as normal user with one of the above commands.
2. Install as root into /usr
sudo make install
This installs startlazarus, lazarus-ide, lazbuild under /usr/bin
and copies the whole lazarus source directory to /usr/share/lazarus
Make parameters
There are additional parameters which can be used to make Lazarus. See a fully working example above.
- OPT=%compiler_switches
the %compiler_switches is passed to each fpc call. The option is useful for specifying defines
For example:
make bigide OPT="-dNoGdkPixBufLib -gw2"
makes LCL and ide with NoGdkPixBufLib defined and dwarf2 debug info.
- LCL_PLATFORM=%platform
%platform is the target widgetset. It can be win32,wince,gtk,gtk2,qt,carbon,cocoa,customdrawn.
For example:
make LCL_PLATFORM=gtk2
Rebuilds LCL and IDE for gtk2 widgetset
- FPC=%compiler_path
or
- PP=%compiler_path
%compiler_path is the path+filename to a custom compiler binary you want to build the target with.
such as:
make FPC="~/Pfad/fpc"
Browse the Source Repository with a Web Browser
The contents of the GIT repro can also be browsed with your web-browser through interface.
Lazarus Distributions
There are some unofficial sites where you can find Lazarus and Free Pascal too:
- NewPascal is a curated distribution for Windows, which doesn't require an installer and implements some new features. (Is very out-of-date)
- The getlazarus distribution bundles cutting-edge versions of Lazarus with easy-to-use setup scripts for several platforms and additional components.
- FreeSparta is a commercial distribution of Lazarus for Windows.
- You can get a Ubuntu LiveCD from Austrian University of Applied Sciences hosting http://www.sigma-server.com/liveCD/Ubuntu-7.10-NTC-Lazarus.iso and md5sum file is here http://www.sigma-server.com/liveCD/Ubuntu-7.10-NTC-Lazarus.iso.md5.
- The CodeTyphon distribution bundles Lazarus with additional packages and components.
- LiteZarus is a Lazarus distro intended for designing creating non-LCL projects.
- Lazarus is available on CDs and USB sticks from the Blaise Pascal Magazine store.