Difference between revisions of "Installing Lazarus"

From Lazarus wiki
Jump to navigationJump to search
m (→‎From source on Windows: Fix intra-page link)
(→‎See also: Add link)
 
(34 intermediate revisions by 2 users not shown)
Line 1: Line 1:
 
{{Installing Lazarus}}
 
{{Installing Lazarus}}
  
= Overview =
+
== Overview ==
  
A real "in depth" build guide is [http://www.stack.nl/~marcov/buildfaq.pdf here].
+
For people who simply want to install Lazarus and start using it for programming, the easiest approach is to download and install a recent, reasonably stable binary release (such as a Linux ".rpm" package, a Windows ".exe" installer, or a macOS ".dmg" disk image or installer ".pkg" package).  
  
For binary downloads of Lazarus see [http://wiki.lazarus.freepascal.org/Getting_Lazarus#Download_and_install_Lazarus_release_version Download and install Lazarus release version]
+
For those who want to participate in the development of the compiler or the Lazarus IDE, or for those who want the most up-to-date tools, an installation from source files is necessary.
  
For people who simply want to install Lazarus and start using it for programming, the easiest approach is to download and install a recent, reasonably stable binary release (such as a Linux ".rpm" package, a Windows ".exe" installer, or a macOS ".dmg" package). You can read the sections under Linux or Windows entitled "fpc binaries" or the first paragraphs in the sections on installing Lazarus in Linux or Windows; most of the remaining information can be safely ignored.
+
The Lazarus IDE provides two main parts:
 
 
For those who want to participate in the development of the compiler or the IDE, or for those who want the most up-to-date tools, an installation from source files is necessary, and much of the rest of this information is relevant.
 
 
 
Lazarus provides two main parts:
 
 
* LCL - the Lazarus Component Library
 
* LCL - the Lazarus Component Library
* IDE - the RAD tool
+
* IDE - the RAD tool itself
  
 
These in turn are dependent on:
 
These in turn are dependent on:
* FPC - the Free Pascal compiler
+
* FPC - the Free Pascal Compiler
* FCL - the Free Pascal Component library, containing most of the non-graphic components used by Lazarus
+
* FCL - the Free Pascal Component library, containing most of the non-graphic components used by the Lazarus IDE.
 
 
== Lazarus System Requirements ==
 
 
 
# Free Pascal compiler, packages, and sources. (*important*: of the same version/date)
 
# A supported widget set
 
#:;Win32/Win64: The native Win32 API can be used, or Qt widgetset.
 
#:;Linux/BSD: GTK+ 2.x or Qt : Most Linux distributions and *BSDs already install the GTK+ 2.x libraries. You can also find them at http://www.gtk.org. <br/>Qt is also supported with all distributions (auto installed if you prefer KDE). <br>
 
#:;macOS: You need the Apple Xcode developer tools. See [[#macOS|Installing under macOS]] below. <br/> For macOS versions before 10.15 (Catalina), 32 bit Carbon or 64 bit Cocoa can be used. <br/> For macOS 10.15 onwards, 64 bit Cocoa must be used as all 32 bit support has been removed by Apple.<br/> Qt can be used too, but requires much more effort.
 
  
The FAQ - Frequently Asked Questions file is available at http://www.lazarus.freepascal.org. Some of the questions can be found in the local file 'FAQ'.
+
== Lazarus system requirements ==
  
The Qt widget set is supported on Linux 32/64, Win 32/64, macOS 32/64, FreeBSD 32/64, Haiku and embedded Linux (qtopia) platforms.
+
# A Free Pascal Compiler, packages, and sources. (*Important*: of the same version/date)
 +
# A supported widget set:
 +
#:;Win32/Win64: The native Win32 API can be used, or the Qt widgetset.
 +
#:;Linux/BSD: GTK+ 2.x or Qt : Most Linux distributions and *BSDs already install the GTK+ 2.x libraries. You can also find them at http://www.gtk.org. <br/>Qt is also supported with all distributions (auto installed if you prefer KDE).
 +
#:;macOS: You need the Apple Xcode developer tools. For macOS versions before 10.15 (Catalina), the 32 bit Carbon or 64 bit Cocoa widget sets can be used. <br/> For macOS 10.15 onwards, the 64 bit Cocoa widget set must be used as all 32 bit support has been removed by Apple.<br/> Qt can be used too, but it requires much more effort.
  
More about Qt installation, see the [[Qt Interface]] article.
+
::The Qt widget set is supported on Linux 32/64, Win 32/64, macOS 32/64, FreeBSD 32/64, Haiku and embedded Linux (qtopia) platforms. For more details about the installation of Qt, see the [[Qt Interface]] article.
  
The following sections describe how to get Free Pascal and how to install Lazarus properly.
+
== Operating system specific guides ==
  
= Quick Start Guides =
+
* Remember that the Free Pascal Compiler and the Lazarus IDE are separate products, you almost certainly need to install FPC, FPC Source and Lazarus (maybe in that order!).
  
While the remainder of this page has much valuable information, many users may need no more than the following "quick start guides" - perhaps ?
+
* Some people recommended using the [[fpcup|fpcUP]] updater-installer for first time users of Lazarus, which installs Free Pascal and Lazarus in one go into a single subdirectory structure ( ~/development ).
  
== FreeBSD ==
+
=== FreeBSD ===
  
 
* See [[Installing Lazarus on FreeBSD]]  
 
* See [[Installing Lazarus on FreeBSD]]  
  
==Linux==
+
=== Haiku ===
  
* See [[Installing Lazarus on Linux]]
+
* See [[Installing Lazarus on Haiku]]
  
== macOS ==
+
=== Linux ===
  
* See [[Installing Lazarus on macOS]]
+
'''See [[Installing Lazarus on Linux]] which covers most of what you need for most Linux Distributions.'''
  
== Windows ==
+
* The command to start Lazarus from a console is [[startlazarus]]. If you installed it from a Debian package, you should have a Lazarus menu entry under Application/Programming.
 +
* Issue: there is an ambiguity with a program also called "lazarus" from a <tt>tct</tt> package available for Ubuntu.
 +
* For a fully working Lazarus installation, older versions of the FPC compiler, FPC source or Lazarus can be a problem if present.
 +
* Some people recommended using [[fpcup|fpcUP]] updater-installer for first time users of Lazarus, which installs Free Pascal and Lazarus in one go into a single subdirectory structure (~/development).
  
By far the easiest and most common way to install Lazarus on windows is to go to the Lazarus SourceForge download site, https://sourceforge.net/projects/lazarus/files/ select an appropriate combined FPC/Lazarus package, download and install.
+
Some distribution specific pages exist, but they may not be as up to date as the [[Installing Lazarus on Linux]] guide.
  
= Installing the Free Pascal Compiler =
+
* [[Install on aarch64 Arch or Manjaro]]
 +
* [[Install on Fedora]]
 +
* [[Scientific Linux]]
  
There is an extensive discussion of how to install and build Free Pascal compilers available here http://www.stack.nl/~marcov/buildfaq.pdf - it may be a little too detailed for some users, but is very comprehensive.
+
'''Ubuntu/Debian Linux notes'''
  
== Linux ==
+
* The Debian Testing Repository, unlike Ubuntu Releases, often contains a current or near current version of FPC and Lazarus. Feedback is needed and appreciated; please send your comments to Carlos Laviola <claviola@debian.org>
 +
* Building debs the easy way - A possible way to get a current working installation of Lazarus is to download and build your own .deb packages by following the instructions at [[How to setup a FPC and Lazarus Ubuntu repository]]
  
'''FPC binaries'''
+
=== macOS ===
  
With the recent release of FPC320, few distributions will have the new FPC compiler in its repositories and, as yet, the FPC320 deb bundled with a Lazarus release is not available.
+
* See [[Installing Lazarus on macOS]]
 
 
However, installing from a tar is easy and possibly even more useful for some users. You need to download the appropriate binary tar for your OS and CPU and you will also (probably) need the source files, common for all OS/CPU. You install FPC this way in your own space, not as root.
 
 
 
Here is a series of command, not a script, that will install FPC on a 64bit Linux system. It could be scripted but would would need sanity and error checking. Note that I like to install things like this in my $HOME/bin directory, if your prefer having it in $HOME, its even easier, I am sure you can see the differences.
 
 
 
{{Note| It is assumed you already have a previous  FPC working and therefor don't need to resolve dependencies, if that is not the case, first install binutils make gcc subversion vim libgtk2.0-dev  libx11-dev and possibly libqt5pas-dev.}}
 
 
 
<syntaxhighlight lang="bash">
 
cd
 
mkdir -p bin/FPC/Tars
 
mkdir bin/FPC/SRC
 
cd bin/FPC/Tars
 
# download src and compiler tars, change for different CPU (or Mac ?)
 
wget https://sourceforge.net/projects/freepascal/files/Source/3.2.0/fpc-3.2.0.source.tar.gz
 
wget https://sourceforge.net/projects/freepascal/files/Linux/3.2.0/fpc-3.2.0-x86_64-linux.tar
 
tar xf fpc-3.2.0-x86_64-linux.tar
 
cd fpc-3.2.0-x86_64-linux
 
./install.sh
 
# when asked where to install, enter $HOME/bin/FPC/fpc-3.2.0, accept all defaults after that.
 
 
 
cd ../../SRC
 
tar xzf ../Tars/fpc-3.2.0.source.tar.gz
 
 
 
# Set a path to where the compiler is, add line at end of .bashrc, if you don't use bash, adjust !
 
echo "PATH=\"\$HOME/bin/FPC/fpc-3.2.0/bin\":\"\$PATH\"" >> ~/.bashrc
 
source ~/.bashrc
 
 
 
# trivial test
 
cd
 
fpc -iV
 
</syntaxhighlight>
 
 
 
'''The following instructions relate to installing from a package -'''
 
 
 
 
 
The latest release of Free Pascal can be obtained from the Free Pascal website (https://www.freepascal.org/download.html, then choose a mirror) or from SourceForge (http://sourceforge.net/projects/lazarus).
 
 
 
At the Lazarus downloads section (http://www.lazarus.freepascal.org) you can get the RPM or DEB of the Free Pascal compiler (compiler / Linux) and its packages. If you don't have an RPM-based or Debian-based distribution, you can download and install the tarballs from http://www.freepascal.org. If you want to compile the binaries for yourself, see the BSD section.
 
 
 
Instructions:
 
 
 
{{Warning| If you're '''not using RPMs or Debian packages''' (even if you plan to use alien) it's best to get latest stable FPC and install Lazarus from source.}}
 
 
 
Start Linux and login as '''root'''.
 
 
 
Download latest files from https://sourceforge.net/projects/lazarus/files/.
 
 
 
As example:
 
:* lazarus-2.0.4-0.x86_64.rpm
 
:* fpc-3.0.4-1.x86_64.rpm
 
:* fpc-src-3.0.4-1.x86_64.rpm
 
 
 
and install them with:
 
 
 
:* rpm -Uvh *.rpm
 
 
 
Debian users are recommended to use the deb packages, but may use either alien (warning, it doesn't generate fpc.cfg) or the tarball install.
 
 
 
'''FPC sources'''
 
 
 
FPC source files are stored in a Subversion (SVN) repository that keeps track of all changes of the source tree.
 
Once you have the sources, please see [[#From_source_on_Linux.2FBSD| installing Free Pascal from source under Linux/BSD]] for instructions on how to install them.
 
 
 
'''Download daily source snapshot of development tree'''
 
 
 
You can download today's development sources in the form of a packed snapshot from the SVN source repository: these snapshots are updated on a daily basis, and reflect the state of the source repository. They are not tested, might not work or even crash your system. The files are kept at the site which has the SVN archive. The version of FPC used can vary.
 
Location: [http://www.hu.freepascal.org/lazarus/]
 
 
 
'''Update source repository using SVN'''
 
 
 
As an alternative to the daily zip files of the SVN sources, the SVN repository has been made accessible for everyone, with read-only access. This means that you can directly access the code, and you will have really the last-minute sources available. It is also a method which requires less bandwidth once you have done the first download (checkout in SVN lingo).
 
 
 
'''Getting the source'''
 
 
 
First, you need to have an SVN client installed. Use your package manager, install a tool like TortoiseSVN on Windows, or look at [http://subversion.tigris.org/ the web site] for more details.
 
 
 
Using command line SVN: change directory (cd) to the parent directory of your development area, eg
 
To retrieve the full source repository for the first time into an fpc subdirectory under your home directory, type
 
<syntaxhighlight lang="bash">
 
cd ~
 
svn checkout http://svn.freepascal.org/svn/fpc/trunk fpc
 
</syntaxhighlight>
 
 
 
To update the sources which were downloaded (checked out) above
 
<syntaxhighlight lang="bash">
 
cd ~
 
svn update fpc
 
</syntaxhighlight>
 
 
 
'''Getting a separate branch'''
 
 
 
If the current trunk version is in a state of rapid change and unsuitable for much use unless you want to work on the compiler itself, you can stay on a version that is updated with fixes.
 
To do this, you have to find out a stable '''branch''' that you want to track instead of the default '''trunk''' development version.
 
 
 
The example below shows how you can track the fixes_2_6 version; of course replace as needed depending on what branches you want to track.
 
 
 
This example keeps the fixes in another directory under your home directory - it wouldn't make sense to put two versions of the source in one directory...
 
 
 
<syntaxhighlight lang="bash">
 
cd ~
 
svn checkout http://svn.freepascal.org/svn/fpc/branches/fixes_2_6 fpc_fixes_2_6
 
</syntaxhighlight>
 
Update as usual:
 
<syntaxhighlight lang="bash">
 
cd ~
 
svn update fpc_fixes_2_6
 
</syntaxhighlight>
 
 
 
'''Documentation'''
 
 
 
The documentation sources are in a separate repository called fpcdocs, so the command to get them is
 
<syntaxhighlight lang="bash">
 
cd ~
 
svn checkout http://svn.freepascal.org/svn/fpcdocs/trunk fpcdocs
 
</syntaxhighlight>
 
 
 
If you want to learn more about subversion, read this excellent [http://svnbook.red-bean.com/ Subversion book] which is also available online in different formats for free.
 
 
 
For more information, see the [http://www.freepascal.org/develop.html Free Pascal] website.
 
 
 
== FreeBSD ==
 
 
 
{{Note|If you wish to also install Lazarus, you can omit installing FPC with the steps below as the Lazarus port will install it for you}}
 
 
 
The FreeBSD ports collection has FPC v3.0.4 version in /usr/ports/lang/fpc. FPC is scattered over 38 (!) packages. The FPC source is now installed by default; it previously needed to be copied and uncompressed from /usr/ports/distfiles/freepascal.
 
 
 
This must be done as root.
 
 
 
<syntaxhighlight lang="bash">
 
# cd /usr/ports/lang/fpc && make install && make clean
 
</syntaxhighlight>
 
 
 
Once FPC is installed you can check if it's working by simply running as a normal user:
 
 
 
<syntaxhighlight lang="bash">
 
$ fpc test
 
</syntaxhighlight>
 
 
 
which should produce output similar to this:
 
  
  Free Pascal Compiler version 3.0.4 [2019/07/21] for x86_64
+
=== Raspbian  ===
  Copyright (c) 1993-2017 by Florian Klaempfl and others
 
  Target OS: FreeBSD for x86-64
 
  Compiling test
 
  Fatal: Cannot open file "test"
 
  Fatal: Compilation aborted
 
  Error: /usr/local/bin/ppcx64 returned an error exitcode
 
  
== From tar on FreeBSD ==
+
* See [[Lazarus on Raspberry Pi]]
  
Select the appropriate 32 bit/64 bit tar file based on your system. For x86_64 64-bit FreeBSD, download from [https://www.freepascal.org/down/x86_64/freebsd.html x86_64]. For i386 32-bit FreeBSD, download from [https://www.freepascal.org/down/i386/freebsd.html i386].
+
=== Windows ===
  
To install Free Pascal from a terminal:
+
* See [[Installing Lazarus on Windows]]
  
<syntaxhighlight lang="bash">
+
== Multiple Lazarus installs ==
$ wget ftp://ftp.hu.freepascal.org/pub/fpc/dist/3.0.4/x86_64-freebsd/fpc-3.0.4.x86_64-freebsd11.tar
 
$ tar -xf fpc-3.0.4.x86_64-freebsd11.tar
 
$ cd fpc-3.0.4.x86_64-freebsd
 
$ sh install.sh
 
</syntaxhighlight>
 
  
If you want to install the Free Pascal Compiler globally, for example in /usr/local, run the install.sh script as root.
 
 
If you are on FreeBSD 12 or newer, the default linker is the LLD linker. This may cause problems if you have code that uses, for example, the cthreads unit as in the following program:
 
 
<syntaxhighlight lang="pascal">
 
uses cthreads;
 
begin
 
    writeln('hello');
 
end.
 
</syntaxhighlight>
 
 
The executable generated for this program will cause a segmentation fault when run. To fix this issue, you need to install the GNU linker:
 
 
<syntaxhighlight lang="bash">
 
root# pkg install binutils
 
</syntaxhighlight>
 
 
and make sure that <tt>/usr/local/bin/</tt> occurs in your PATH before <tt>/usr/bin/</tt>.
 
 
== From source on Linux/BSD ==
 
 
Effectively, you need:
 
 
If you have a file with all FPC sources, or two (FPC and Lazarus):
 
 
1. For fpc ftp://ftp.freepascal.org/fpc/dist/Linux/separate/sources.tar preferably an export (no SVN/dirs).
 
 
2. Lazarus source snapshot.
 
 
3. A starting (bootstrap) FPC compiler. An FPC release can always be built by the previously released FPC version, and FPC trunk can always be built by the current FPC release. You can download a bootstrap Free Pascal Compiler or use your distribution's package management/software system to install one.
 
 
FPC build process:
 
 
* Fetch necessary files (starting compiler), FPC source file or source svn directory
 
* If using FPC source files: extract/de-tgz in work directory,
 
* Build: enter work/fpc/ and run:
 
 
<syntaxhighlight lang="bash">
 
# Linux use: 
 
export MAKE=`which make` ; echo $MAKE
 
# FreeBSD use (default csh, or tcsh):
 
set MAKE=`which gmake` ; echo $MAKE
 
# FreeBSD use (bash):
 
export MAKE=`which gmake` ; echo $MAKE
 
$MAKE all OPT='-gl' PP=/path/to/startingcompiler-name-ppc386
 
# $MAKE is make on Linux and gmake on BSD
 
# /path/to/ can be omitted when ppc386 is in the path
 
</syntaxhighlight>
 
 
* Install fpc. Again in work/fpc, run
 
 
<syntaxhighlight lang="bash">
 
$MAKE install PP=compiler/ppc386 PREFIX=$THEPREFIX
 
#replace the PP=compiler/ppc386 with the relevant compiler if not on Intel x86
 
#THEPREFIX= usually is /usr/local or just /usr, but e.g. on NetBSD it is /usr/pkg for ports)
 
</syntaxhighlight>
 
 
* Create a symlink:
 
 
<syntaxhighlight lang="bash">
 
ln -s $THEPREFIX/lib/fpc/3.0.0/ppc386 $THEPREFIX/bin/ppc386
 
</syntaxhighlight>
 
 
* Install sources:
 
 
<syntaxhighlight lang="bash">
 
$MAKE install sourceinstall PREFIX=$THEPREFIX
 
</syntaxhighlight>
 
 
* Create a symlink for default Lazarus source path:
 
 
<syntaxhighlight lang=bash>
 
ln -sf $THEPREFIX/share/src/3.0.0/fpc /usr/share/fpcsrc
 
</syntaxhighlight>
 
 
* Set up fpc.cfg configuration file:
 
 
<syntaxhighlight lang="bash">$THEPREFIX/lib/fpc/3.0.0/samplecfg $THEPREFIX/lib/fpc/3.0.0 $ETCDIR</syntaxhighlight>
 
 
* Optionally test to see if ppc386 -i (or whatever compiler your architecture uses) gives output, else give a warning that user need to add $PREFIX/bin to his current path. Try to compiler a program with -viwn, and see if that gives errors.
 
 
Notes:
 
 
* If you need fpcmake package lists, you need to generate or supply them yourself, (in the port, or in an extra archive) either way, do a dummy install to /tmp/pack and determine the files installed with <syntaxhighlight lang="bash">find . >ll</syntaxhighlight>
 
 
* $THEPREFIX and $ETCDIR should be user configurable. Otherwise local installs aren't possible.
 
 
* BSDHIER=1 on all make commands forces BSD hierarchy conventions.
 
 
== Windows ==
 
 
By far the easiest way to get a working installation of Free Pascal is to download the current binary Windows release of Lazarus from the [http://sourceforge.net/projects/lazarus/files/ SourceForge repository] - the release contains the current versions of the Free Pascal Compiler and the Free Pascal libraries as well as the Lazarus IDE.
 
 
== From source on Windows ==
 
 
You can get the installer zip for fpc at Free Pascal's download section (http://www.freepascal.org/download.html, then choose a mirror).
 
 
Installing from the sources -- see the next section to know how to get them -- is not for novices, since you need a starting compiler as well.
 
 
'''FPC Sources for Windows'''
 
 
<<<< See section above under [[#Linux_2|FPC Sources]] for Linux, where the use of SVN is described >>>>
 
 
The easiest way to get the Free Pascal sources is via SVN; see the next section for more on that. You can also download the package as a whole -- see http://www.freepascal.org/develop.html for the daily snapshot of the release tree.
 
 
'''Windows FPC Sources via SVN'''
 
 
You will need to have a SVN client such as TortoiseSVN installed in order to perform the steps below. The exact commands vary between SVN clients; the ones given below are to be used under SVN home's client, which is available for download here.
 
 
First create a directory in which you'd like to put the sources. Any normal user can do this. Create a directory for fpc (e.g. C:\Source), then do the following at the command prompt:
 
 
<syntaxhighlight lang="bash">C:\Source> svn co http://svn.freepascal.org/svn/fpc/trunk fpc</syntaxhighlight>
 
Hint: To download/update the latest changes you can simply do
 
<syntaxhighlight lang="dos">
 
C:\> cd Source\FPC
 
C:\Source\FPC> svn up
 
</syntaxhighlight>
 
 
See: http://www.freepascal.org/down/i386/win32.html . Download FPC as one big file, unzip it and run the install.exe.
 
 
Extending your PATH variable to the fpc directory:
 
 
* Win98: Edit autoexec.bat and add the line: PATH=C:\pp\bin\bin\win32;%PATH%  NO trailing \ !
 
* WinXP/2k: My Computer (Right Click) ->  Properties -> Advanced (Page) -> Environment Variables -> System Variables -> Edit "PATH", Add "C:\pp\bin\bin\win32" there.
 
 
Then restart windows.
 
 
After you have FPC binaries installed you can build FPC source from subversion. 
 
 
Hints: 
 
 
* Windows (7+) requires that an elevated user status command prompt be used.  From the start menu for "Command Prompt" right click and select "Run as Administrator".
 
* YOUR-PREFIX is totally dependent on where you installed FPC to.  At the time of this writing, the binaries are instructed to use a default location of "C:\FPC" and they were placed in "C:\FPC\2.6.4".  Under Linux, the make install scripts were adjusted to create a new sub-folder IF the FPC version changed since last build. The Windows scripts do not. So if you know the sub-folder name ie. 3.1.1 you can specify that. However, since versions change frequently, it is recommended that you just select and maintain a single PREFIX with no respect for FPC versions. A good prefix is C:\FPC but you must also make sure that the C:\FPC\bin\i386-win32\ folder is added to your path environment variable (see above on how to set your path and change it from the binary version to the newly compiled one).
 
 
Instructions:
 
 
* In command Prompt navigate to the localized FPC source. ie.) type "cd c:\Developer\FPC"
 
* To build FPC type "make all"
 
* To overwrite existing FPC type "make install PREFIX=YOUR-PREFIX"
 
* To install source type "make install sourceinstall PREFIX=YOUR-PREFIX"
 
 
'''Compiling/installing FPC from sources with SVN (Win32)'''
 
 
Version FPC '''3.0.4''' or '''trunk'''
 
 
''STEP #1: Create directories and get the sources''
 
 
Create the following directories:
 
  c:\freepascal\
 
  c:\freepascal\binutils\
 
  c:\freepascal\binutils\i386-win32\
 
  c:\freepascal\fpc\
 
  c:\freepascal\fpc\3.0.4\
 
 
or for fpc trunk:
 
  c:\freepascal\
 
  c:\freepascal\binutils\
 
  c:\freepascal\binutils\i386-win32\
 
  c:\freepascal\fpc\
 
  c:\freepascal\fpc\trunk\
 
 
You will need the latest '''released'' compiler to build a new compiler. Get the ppc386 (the compiler) with FTP (below) and unzip it in c:\freepascal\binutils\
 
 
  ftp://ftp.freepascal.org/pub/fpc/dist/3.0.4/bootstrap/i386-win32-ppc386.zip
 
 
After installing [http://tortoisesvn.tigris.org/ TortoiseSVN], download the sources from SVN using a URL for each directory, see:
 
 
  Dir: c:\freepascal\binutils\i386-win32\
 
  URL: http://svn.freepascal.org/svn/fpcbuild/branches/fixes_3_0/install/binw32
 
 
or for fpc trunk:
 
 
  Dir: c:\freepascal\binutils\i386-win32\
 
  URL: http://svn.freepascal.org/svn/fpcbuild/trunk/install/binw32
 
 
  Dir: c:\freepascal\fpc\3.0.4
 
  URL: http://svn.freepascal.org/svn/fpc/branches/fixes_3_0/
 
 
or for fpc trunk:
 
 
  Dir: c:\freepascal\fpc\trunk
 
  URL: http://svn.freepascal.org/svn/fpc/trunk/
 
 
''STEP #2: Create a BAT file to compile FPC''
 
 
After everything is downloaded, we need a BAT file to compile the FPC sources.
 
Create a new file c:\freepascal\makefpc.bat and copy/paste the following script:
 
 
<syntaxhighlight lang="dos">
 
@echo on
 
set myroot=c:\freepascal
 
set myFPC=%myroot%\fpc\3.0.4
 
set mybinutils=%myroot%\binutils
 
set PATH=%PATH%;%mybinutils%\i386-win32;%myFPC%\bin\i386-win32
 
cd %myFPC%
 
rd /s /q  %myfpc%\examples
 
svn cleanup . --remove-unversioned  --remove-ignored
 
make distclean all install INSTALL_PREFIX=%myFPC% PP=%mybinutils%\ppc386.exe DATA2INC=%myFPC%\utils\data2inc.exe
 
cd /d %myFPC%\bin\i386-win32
 
fpcmkcfg -d basepath=%myFPC% -o .\fpc.cfg
 
copy fpc.exe %mybinutils%\i386-win32
 
</syntaxhighlight>
 
 
or for fpc trunk:
 
 
<syntaxhighlight lang="dos">
 
@echo on
 
set myroot=c:\freepascal
 
set myFPC=%myroot%\fpc\trunk
 
set mybinutils=%myroot%\binutils
 
set PATH=%PATH%;%mybinutils%\i386-win32;%myFPC%\bin\i386-win32
 
cd %myFPC%
 
rd /s /q  %myfpc%\examples
 
svn cleanup . --remove-unversioned  --remove-ignored
 
make distclean all install INSTALL_PREFIX=%myFPC% PP=%mybinutils%\ppc386.exe DATA2INC=%myFPC%\utils\data2inc.exe
 
cd /d %myFPC%\bin\i386-win32
 
del fpc.cfg
 
fpcmkcfg -d basepath=%myFPC% -o .\fpc.cfg
 
copy fpc.exe %mybinutils%\i386-win32
 
</syntaxhighlight>
 
 
For crosscompiler to x86_64 add the following after the first make:
 
 
<syntaxhighlight lang="dos">
 
make all OS_TARGET=win64 CPU_TARGET=x86_64 INSTALL_PREFIX=%myFPC% PP=%mybinutils%\ppc386.exe DATA2INC=%myFPC%\utils\data2inc.exe
 
make crossinstall OS_TARGET=win64 CPU_TARGET=x86_64 INSTALL_PREFIX=%myFPC% PP=%mybinutils%\ppc386.exe DATA2INC=%myFPC%\utils\data2inc.exe
 
</syntaxhighlight>
 
 
''STEP #3: Make and install FPC''
 
 
At the prompt (cmd.exe), navigate to the directory c:\freepascal and execute the script we just wrote:
 
 
<syntaxhighlight lang="dos">
 
cd /d c:\freepascal
 
makefpc.bat
 
</syntaxhighlight>
 
 
Done!
 
 
== macOS ==
 
 
See [[Installing Lazarus on macOS]]
 
 
=Installing Lazarus=
 
 
==Ubuntu/Debian Linux==
 
 
It is recommended to use the [[fpcup|fpcUP]] updater-installer for first time users of Lazarus, which installs Free Pascal and Lazarus in one go into a single subdirectory structure ( ~/development ).
 
 
A way to get a current working installation of Lazarus is to download the .deb files for Free Pascal and Lazarus from the SourceForge repository. Here is how: [[Lazarus release version for Ubuntu|Getting Lazarus from our Ubuntu repository]].
 
 
Note that installing from the default Ubuntu sources will not install the Free Pascal Source Libraries - use the method above.
 
 
{{Note|on Linux Ubuntu at least, the command to start Lazarus from a console is [[startlazarus]]. If you installed it from a Debian package, you should have a Lazarus menu entry under Application/Programming.
 
(Issue: there is an ambiguity with a program also called "lazarus" from a "tct" package available for Ubuntu).}}
 
 
'''Building debs the easy way'''
 
 
The easiest way to get a current working installation of Lazarus is to download and build your own .deb packages by following the instructions at [[How to setup a FPC and Lazarus Ubuntu repository]]
 
 
'''Installing using rpms'''
 
 
The next easiest way is to download the RPMs for Free Pascal and Lazarus from the SourceForge repository.
 
 
You need to download the selected version of:
 
* the compiler (eg fpc-3.0.4-1.i686.rpm)
 
* the pascal source library (eg fpc-src-3.0.4-2.i686.rpm)
 
* the Lazarus package (eg lazarus-2.0.8-0.i686.rpm).
 
 
Uninstall the old packages:
 
 
<syntaxhighlight lang="bash">
 
rpm -ev lazarus
 
rpm -ev fpc
 
rpm -ev fpc-src
 
</syntaxhighlight>
 
Install the new packages:
 
<syntaxhighlight lang="bash">
 
rpm -ivh fpc-*
 
rpm -ivh lazarus-*
 
</syntaxhighlight>
 
 
==Raspbian Wheezy Linux==
 
 
Raspbian is a custom version of Debian for the Raspberry Pi creditcard-size computer. See [[Lazarus on Raspberry Pi]] for details.
 
 
 
==Fedora Linux==
 
 
Recent packages of Lazarus and Free Pascal are included in Fedora by default. See [[Install_on_Fedora|Install on Fedora]] on how to install them.
 
 
==Scientific Linux==
 
 
Scientific Linux is an RPM-based distribution focussing on science and research. See [[Scientific Linux]] for details.
 
 
==Debian GNU Linux==
 
 
There are preliminary Debian packages for lazarus available for download. They are not the latest versions, however. Make sure you read /usr/share/doc/lazarus/README.Debian carefully before you start using it. Feedback is needed and appreciated; please send your comments to Carlos Laviola <claviola@debian.org>.
 
 
Note that for a fully working Lazarus install, no older or incompatible versions of, for example, the fpc source or fpc compiler must be installed. Remove them by typing
 
 
<syntaxhighlight lang="bash">dpkg -r <package name></syntaxhighlight>
 
 
without .deb extension. And then install the newest versions as described.
 
 
==From source on Linux==
 
 
If you prefer to install from source and compile the files yourself, follow these instructions. Because the whole Lazarus toolchain is installed into one directory, uninstall is very easy and you don't need to be root to install Lazarus. You can get tgz files for fpc, fpcsrc and lazarus from the downloads section or you can download it directly via svn.
 
 
Here is an example of installing 0.9.28 to Ubuntu 6.06. If you understand Linux commands and bash script, you can get what steps are needed. Just copy the script (change the version number when new version has been released), paste it into a text editor, and save it as something like "install_lazarus.sh". Give it execute permission, and run it in
 
a console.
 
 
{{Note|In this example, fpc is installed in /opt. So when prompted ''''Install prefix'''', enter '/opt/fpc'. }}
 
 
<syntaxhighlight lang="bash">
 
#!/bin/sh
 
 
 
#installing required packages
 
sudo apt-get install build-essential
 
sudo apt-get install libgtk2.0-dev
 
sudo apt-get install libgdk-pixbuf-dev
 
 
 
#installing Free Pascal source
 
cd /opt
 
sudo wget http://nchc.dl.sourceforge.net/lazarus/fpc-src-2.4.2.source.tgz
 
sudo tar -xvf fpc-src-2.4.2.source.tgz
 
sudo mv fpc fpcsrc
 
 
 
#installing Free Pascal
 
sudo mkdir fpc
 
cd fpc
 
sudo wget http://nchc.dl.sourceforge.net/lazarus/fpc-2.4.2.i686-linux.tar
 
sudo tar -xvf fpc-2.4.2.i686-linux.tar
 
echo "Enter '/opt/fpc' when prompted 'Install prefix'"
 
sudo sh install.sh
 
 
 
#adding fpc path to the PATH
 
echo "#FPC PATH" >> ~/.bash_profile
 
echo "if [ -d /opt/fpc/bin ] ; then" >> ~/.bash_profile
 
echo PATH=/opt/fpc/bin:"${PATH}" >> ~/.bash_profile
 
echo "fi" >> ~/.bash_profile
 
 
 
#installing Lazarus
 
cd ../
 
sudo wget http://nchc.dl.sourceforge.net/lazarus/lazarus-0.9.30-0.tar.gz
 
# sudo wget https://downloads.sourceforge.net/project/lazarus/Lazarus%20Zip%20_%20GZip/Lazarus%201.8.0RC5/lazarus-1.8.0-RC5.tar.gz
 
sudo tar -zxvf lazarus-0.9.30-0.tar.gz
 
PATH=/opt/fpc/bin:"${PATH}"
 
sudo chmod -R 777 lazarus
 
cd lazarus
 
make clean all
 
./lazarus
 
</syntaxhighlight>
 
 
{{Note|You have to manually set fpc-src path in the Environmental Options.}}
 
 
'''Downloading Lazarus Source Code'''
 
 
Both the Lazarus and FPC source code reside in SVN/subversion repositories. SVN provides an easy way to update your sources by only downloading the changes. This is the recommended way and saves you a lot of time. A connection to the internet is needed for this, but you don't need to be root.
 
 
Please note these instructions are for subversion, but there is also a Git mirror repository of Free Pascal Compiler and Lazarus: see [[git mirrors|Git mirror]]. You can also use git directly with the subversion server using git-svn link: see [[Lazarus git-svn|Lazarus git-svn]].
 
 
Lazarus does not need any special permissions, neither during installation nor at runtime.
 
 
<font color="red">If you decide to use TortoiseSVN, remember to check "command line client tools" during its installation if you want Lazarus to show the SVN revision number in the About dialog.</font>
 
 
;Now getting the sources:
 
 
<syntaxhighlight lang="bash"> svn checkout http://svn.freepascal.org/svn/lazarus/trunk/ lazarus</syntaxhighlight>
 
(replace the last lazarus with any other dir where you want to place your sources)
 
 
On subsequent occasions, to update simply type
 
 
<syntaxhighlight lang="bash"> svn update lazarus</syntaxhighlight>
 
 
For more information on Subversion, see:
 
http://subversion.tigris.org/
 
 
'''Compiling and running'''
 
 
Whether you checkout from cvs or svn, the next step is:
 
 
;compile lazarus:
 
<syntaxhighlight lang="bash">
 
cd lazarus
 
make  (gmake on BSD)
 
</syntaxhighlight>
 
 
If fpc is installed correctly, the compilation should work without problems. If not, see FAQ.
 
 
;Start lazarus
 
<syntaxhighlight lang="bash"> ./lazarus</syntaxhighlight>
 
 
The IDE should start. If you started lazarus in a terminal, you can see some notes about missing settings. This is normal at first start. The IDE automatically tries to find out where the Free Pascal compiler and its sources are installed by searching in the most common directories.
 
 
;Check the paths:
 
: Use the IDE menu to go to
 
:: Environment -> Environment Options -> Files
 
 
The 'FPC Source directory' should point to your fpc source directory. This directory normally ends with /fpc/ or /fpcsrc/ (e.g. /usr/src/fpcsrc or /home/username/freepascal/fpc) and contains directories like 'compiler', 'docs', 'fcl', 'rtl' and 'packages'.
 
 
See here for the documentation about this dialog: [[IDE_Window:_Environment_Options|IDE Options]].
 
 
;Hint:
 
To update lazarus you can use
 
<syntaxhighlight lang="bash"> svn update lazarus</syntaxhighlight>
 
then for either update pathway:
 
<syntaxhighlight lang="bash"> make clean all  (gmake on BSD)</syntaxhighlight>
 
This will rebuild lazarus and create an IDE without lazarus packages. To link your installed packages do '''after''' the above:
 
<syntaxhighlight lang="bash"> ./lazbuild --build-ide=</syntaxhighlight>
 
 
You may have to append other options if for example you use a custom config directory (ie. add --pcp="C:\Documents and Settings\<USER>\Local Settings\Application Data\lazarus-tests"). See [[lazbuild]].
 
 
==Windows==
 
 
[[File:Lazarus-install-en.png|right]]
 
 
The current releases of the Windows Lazarus binary packages install very easily, and should work 'out-of-the-box'. Upgrade is as simple as downloading the new installer and running.
 
 
Except for Win98 and ME, which needs a special flag to compile. Use make OPT="-dWIN9XPLATFORM" otherwise the lazarus.exe will not be able to run on this platform.
 
 
'''Installing Lazarus on Portable USB Drive'''
 
 
It is even possible to install the whole Lazarus/FPC package on a portable USB drive (capacity at least 256 MB), for use in environments where you are not allowed to install software on your Windows workstation or where you haven't got administrator privileges. You do have to be a little careful about adjusting the paths in the compiler and environment options and the fpc.cfg file.  It may also be necessary to keep the directory for test compilation on your portable drive.
 
 
<< Q:DOES ANYONE KNOW HOW TO SET UP RELATIVE PATHS IN THESE TAGS AND FILES, SO THAT THE ADDRESSING WORKS WHEN YOU MOVE THE USB DEVICE TO ANOTHER MACHINE WHERE IT HAS A DIFFERENT DRIVE LETTER?
 
 
A: This is what I do. It's relatively convoluted, but it's the best solution I've found. I have a "bin" directory on my USB drive, where I have several scripts and utilities installed. Inside that directory is a batch file called "setenv.bat" which sets an environment variable called THUMBDRIVE. It is set by using this command in the batch file:
 
<syntaxhighlight lang="dos">set THUMBDRIVE=%CD:~0,2%</syntaxhighlight>
 
This is used in setenv.bat to set some paths to other things I have installed on the USB drive. I also have a link in the root directory of the thumb drive with this property:
 
<syntaxhighlight lang="dos">%SystemRoot%\system32\cmd.exe /k bin\setenv</syntaxhighlight>
 
so that when I click on that link when the thumb drive folder is diplayed after inserting it, it will open a command prompt at the thumb drive with the environment variables set from setenv.bat.
 
 
Also inside the bin directory is [http://sed.sf.net sed] (the actual binary is one I obtained from the mingw distribution). So I created another batch file called fixlaz.bat which takes one argument, the drive letter which is currently in the Lazarus/fpc settings files that you want to change (note that this is the previous drive letter the last time you ran fixlaz.bat, not the current one of your USB drive which fixlaz.bat already knows). You will need to create this batch file to fit where you installed Lazarus in the root directory structure of the drive if you didn't install it directly in the root folder, and then repeat these lines also for the editoroptions.xml and fpc.cfg files (fpc.cfg is the the fpc bin directory, which might be buried deep in the lazarus folder):
 
 
<syntaxhighlight lang="dos">
 
copy %THUMBDRIVE%\lazarus\environmentoptions.xml %THUMBDRIVE%\lazarus\environmentoptions.bak
 
sed -e 's/%1/%THUMBDRIVE%/g' %THUMBDRIVE%\lazarus\environmentoptions.bak > %THUMBDRIVE%\lazarus\environmentoptions.xml
 
</syntaxhighlight>
 
 
So to use it, I would type at the command prompt of the USB drive:
 
 
<syntaxhighlight lang="dos">fixlaz G:</syntaxhighlight>
 
 
if "G:" was the previous drive letter used the last time I ran it. This will then scan the file(s) and replace "G:" with the current drive letter of the USB drive, which is in the %THUMBDRIVE% environment variable (after running setenv.bat). Note that you could write it to save the current drive letter in a separate file, so that you wouldn't have to remember it yourself the next time. But this works well enough for me right now.
 
>>
 
 
The binary package is available for Linux and Windows from http://sourceforge.net/project/showfiles.php?group_id=89339
 
 
Download the latest release and launch the application. You will be taken through a typical Windows installation, in which the FPC compiler and source libraries are installed within the same directory structure as Lazarus, and the IDE should launch and operate without significant problems, provided you have uninstalled(!!!) any previous version of Lazarus and/or FPC (often found in the C:\pp directory).
 
 
You can also use a Lazarus Snapshot. For download locations see [[Lazarus Snapshots Downloads]].
 
 
Tip:
 
It's perhaps a good idea to reboot your Windows after you installed Lazarus and before you try to install additional lazarus components as zeoslib fore example.
 
 
==From source on Windows==
 
 
If you prefer to install from sources, then follow these instructions.
 
 
Please note these instructions are for SubVersion, but there is also a Git mirror repository of Free Pascal Compiler and Lazarus. See [[git mirrors|Git mirror]] for details. You can also use git directly with SubVersion server using git-svn link. See  [[Lazarus git-svn|Lazarus git-svn]] for details.
 
 
Open a command prompt window. Start->Run...>CMD or choose MS-DOS icon. You will use this window to enter the commands below
 
 
You have to download the lazarus source from one of the [[Lazarus Snapshots Downloads|snapshots servers]].
 
Then unzip it to c:\lazarus for example [below called $(LazarusDir)].
 
 
Or you use SVN (example for text mode SVN; adapt to GUI tools such as TortoiseSVN if you want to):
 
<syntaxhighlight lang="bash">
 
mkdir c:\lazarus
 
cd /d c:\lazarus
 
svn checkout http://svn.freepascal.org/svn/lazarus/trunk/ c:\lazarus
 
</syntaxhighlight>
 
 
You have to install at least the latests stable FPC version (e.g. FPC 3.0.4, but an FPC 3.1.1 snapshot is also possible).
 
 
Type (replace "YourLazarusDir" with the path you have unzipped/checked out Lazarus; replace
 
<syntaxhighlight lang="dos">
 
cd "YourLazarusDir"
 
rem Of course change the first path variable to
 
rem the path of your FPC compiler
 
set path=c:\freepascal\bin\x86_64-win64;%PATH%
 
make
 
</syntaxhighlight>
 
 
*Win9x/WinME: use make OPT="-dWIN9XPLATFORM" otherwise the lazarus.exe will not be able to run on this platform.
 
 
If this works, you can type: lazarus.exe.
 
 
You can compile examples also:
 
 
<syntaxhighlight lang="dos">
 
cd "YourLazarusDir"\examples
 
make
 
</syntaxhighlight>
 
 
'''Installing from source starting with a stable release'''
 
 
An alternative version of the instructions above.
 
 
1> First of all install the latest stable Lazarus to obtain a good starting FPC, for example in C:\lazarus_1_4
 
 
2> Now use TortoiseSVN to checkout http://svn.freepascal.org/svn/lazarus/trunk/ into c:\lazarus
 
 
3> Make the following C:\lazarus\build.bat file:
 
 
Replace $(LazarusDir) with your Lazarus did and make sure the FPC version number matches
 
 
<syntaxhighlight lang="dos">
 
SET PATH=$(LazarusDir)\fpc\2.6.4\bin\i386-win32\
 
make bigide
 
</syntaxhighlight>
 
 
Now create a shortcut in your desktop to start Lazarus and put the following command to start Lazarus which will make sure that it separates the config files from the stable and the SVN versions:
 
 
<syntaxhighlight lang="dos">$(LazarusDir)\startlazarus.exe --pcp=$(LazarusDir)\configdir </syntaxhighlight>
 
 
Always start Lazarus from this shortcut, never directly from the executable. At the first time you start Lazarus configure you FPC dir, FPC sources dir and Lazarus dir.
 
 
'''Building Lazarus on Win98 and WinME'''
 
 
Because the Lazarus IDE by default links to a dll-call "CreateToolhelp32Snapshot", which does not exist on the Win9x platform, the IDE will not run on Win9x out of the box. In order to make it run you have to rebuild the IDE with make "-dWIN9XPLATFORM".
 
 
== FreeBSD ==
 
 
See [[Installing Lazarus on FreeBSD]].
 
 
== PC-BSD 1.0rc1+ ==
 
 
You can install Lazarus on PB-BSD by simply downloading the Lazarus PBI from [http://www.pbidir.com/ PBI Dir]
 
 
Note that you must install glib* port from /usr/port/devel/glib* or glib packages by pkg_add -r glib12 glib20.
 
I will fix this in new PBI releases.
 
 
'''[other OpenBSD/NetBSD/DragonFlyBSD goes here]'''
 
 
== macOS ==
 
 
See [[Installing Lazarus on macOS]].
 
 
== Haiku ==
 
 
Lazarus requires Qt under Haiku. Qt is not installed by default under Haiku. You need to install package available from this site : http://qt-haiku.ru/
 
 
Currently, there is no binary package to install Lazarus.
 
 
You will have to compile Lazarus from sources.
 
 
Detailed instructions to build Lazarus under Haiku are available here : [[Installing Lazarus on Haiku]]
 
 
=Multiple Lazarus installs=
 
 
Please see [[Multiple Lazarus]] for details on having more than one Lazarus version installed on one system. We cover issues that can arise due to multiple Lazarus installs here, because they can also happen when installing over a previous version.
 
Please see [[Multiple Lazarus]] for details on having more than one Lazarus version installed on one system. We cover issues that can arise due to multiple Lazarus installs here, because they can also happen when installing over a previous version.
  
=Troubleshooting=
+
== Troubleshooting ==
  
 
Troubleshooting details that should (hopefully) be applicable across platforms may be found in the article [[Installation Troubleshooting]].
 
Troubleshooting details that should (hopefully) be applicable across platforms may be found in the article [[Installation Troubleshooting]].
  
=Installing cross compilers=
+
== Lazarus FAQ ==
  
A cross compiler allows you to create binaries (executables) for a platform different from the platform being used for compilation. For example, working under macOS and creating executables for Win32, FreeBSD or Linux. For details on how to do this, see [[Cross_compiling|Cross Compiling]].
+
The Lazarus FAQ - Frequently Asked Questions - page is available [[Lazarus_Faq|here]].
  
=Installing old versions=
+
== Installing old versions ==
  
 
See [[Installation hints for old versions]]
 
See [[Installation hints for old versions]]
</div>
+
 
 +
== See also ==
 +
 
 +
* A real "in depth" build guide is [http://www.stack.nl/~marcov/buildfaq.pdf here].
 +
* [[Getting Lazarus]].

Latest revision as of 05:32, 17 January 2021

Deutsch (de) English (en) español (es) suomi (fi) français (fr) magyar (hu) 日本語 (ja) 한국어 (ko) polski (pl) português (pt) русский (ru) slovenčina (sk) Tiếng Việt (vi) 中文(中国大陆)‎ (zh_CN)

Overview

For people who simply want to install Lazarus and start using it for programming, the easiest approach is to download and install a recent, reasonably stable binary release (such as a Linux ".rpm" package, a Windows ".exe" installer, or a macOS ".dmg" disk image or installer ".pkg" package).

For those who want to participate in the development of the compiler or the Lazarus IDE, or for those who want the most up-to-date tools, an installation from source files is necessary.

The Lazarus IDE provides two main parts:

  • LCL - the Lazarus Component Library
  • IDE - the RAD tool itself

These in turn are dependent on:

  • FPC - the Free Pascal Compiler
  • FCL - the Free Pascal Component library, containing most of the non-graphic components used by the Lazarus IDE.

Lazarus system requirements

  1. A Free Pascal Compiler, packages, and sources. (*Important*: of the same version/date)
  2. A supported widget set:
    Win32/Win64
    The native Win32 API can be used, or the Qt widgetset.
    Linux/BSD
    GTK+ 2.x or Qt : Most Linux distributions and *BSDs already install the GTK+ 2.x libraries. You can also find them at http://www.gtk.org.
    Qt is also supported with all distributions (auto installed if you prefer KDE).
    macOS
    You need the Apple Xcode developer tools. For macOS versions before 10.15 (Catalina), the 32 bit Carbon or 64 bit Cocoa widget sets can be used.
    For macOS 10.15 onwards, the 64 bit Cocoa widget set must be used as all 32 bit support has been removed by Apple.
    Qt can be used too, but it requires much more effort.
The Qt widget set is supported on Linux 32/64, Win 32/64, macOS 32/64, FreeBSD 32/64, Haiku and embedded Linux (qtopia) platforms. For more details about the installation of Qt, see the Qt Interface article.

Operating system specific guides

  • Remember that the Free Pascal Compiler and the Lazarus IDE are separate products, you almost certainly need to install FPC, FPC Source and Lazarus (maybe in that order!).
  • Some people recommended using the fpcUP updater-installer for first time users of Lazarus, which installs Free Pascal and Lazarus in one go into a single subdirectory structure ( ~/development ).

FreeBSD

Haiku

Linux

See Installing Lazarus on Linux which covers most of what you need for most Linux Distributions.

  • The command to start Lazarus from a console is startlazarus. If you installed it from a Debian package, you should have a Lazarus menu entry under Application/Programming.
  • Issue: there is an ambiguity with a program also called "lazarus" from a tct package available for Ubuntu.
  • For a fully working Lazarus installation, older versions of the FPC compiler, FPC source or Lazarus can be a problem if present.
  • Some people recommended using fpcUP updater-installer for first time users of Lazarus, which installs Free Pascal and Lazarus in one go into a single subdirectory structure (~/development).

Some distribution specific pages exist, but they may not be as up to date as the Installing Lazarus on Linux guide.

Ubuntu/Debian Linux notes

  • The Debian Testing Repository, unlike Ubuntu Releases, often contains a current or near current version of FPC and Lazarus. Feedback is needed and appreciated; please send your comments to Carlos Laviola <claviola@debian.org>
  • Building debs the easy way - A possible way to get a current working installation of Lazarus is to download and build your own .deb packages by following the instructions at How to setup a FPC and Lazarus Ubuntu repository

macOS

Raspbian

Windows

Multiple Lazarus installs

Please see Multiple Lazarus for details on having more than one Lazarus version installed on one system. We cover issues that can arise due to multiple Lazarus installs here, because they can also happen when installing over a previous version.

Troubleshooting

Troubleshooting details that should (hopefully) be applicable across platforms may be found in the article Installation Troubleshooting.

Lazarus FAQ

The Lazarus FAQ - Frequently Asked Questions - page is available here.

Installing old versions

See Installation hints for old versions

See also