Difference between revisions of "Installing Lazarus"

From Lazarus wiki
Jump to navigationJump to search
(Restructured Installing section to make intention clearer)
(→‎See also: Add link)
 
(8 intermediate revisions by 2 users not shown)
Line 3: Line 3:
 
== 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 [[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" disk image or installer ".pkg" 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 ==
 
== Lazarus system requirements ==
Line 31: Line 27:
 
== Operating system specific guides ==
 
== Operating system specific guides ==
  
While the remainder of this page has much valuable information, many users may need no more than the following 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|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 ===
Line 43: Line 41:
 
=== Linux ===
 
=== Linux ===
  
* See [[Installing Lazarus on Linux]]
+
'''See [[Installing Lazarus on Linux]] which covers most of what you need for most Linux Distributions.'''
  
=== macOS ===
+
* 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).
  
* See [[Installing Lazarus on macOS]]
+
Some distribution specific pages exist, but they may not be as up to date as the [[Installing Lazarus on Linux]] guide.
  
=== Raspbian  ===
+
* [[Install on aarch64 Arch or Manjaro]]
 +
* [[Install on Fedora]]
 +
* [[Scientific Linux]]
  
* See [[Lazarus on Raspberry Pi]]
+
'''Ubuntu/Debian Linux notes'''
  
=== Windows ===
+
* 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]]
  
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 installation package, download and install.
+
=== macOS ===
  
== Installing Lazarus ==
+
* See [[Installing Lazarus on macOS]]
  
Some people 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 ).
+
=== Raspbian  ===
 
 
Remember that Free Pascal Compiler and Lazarus are separate products, you almost certainly need to install FPC, FPC Source and Lazarus (maybe in that order !).
 
 
 
=== Installing Lazarus on Linux ===
 
 
 
Please See [[Installing Lazarus on Linux]].
 
 
 
* Note, 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).
 
* Note that for a fully working Lazarus install, older versions of fpc compiler, fpc source or Lazarus can be a problem if present.
 
 
 
==== Ubuntu/Debian Linux ====
 
 
 
* '''Debian Testing''' Unlike Ubuntu Releases, Debian Testing repository 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]]
 
 
 
==== Arch or Manjaro Linux (aarch64) ====
 
 
 
To install Free Pascal and Lazarus, see [[Install on aarch64 Arch or Manjaro]].
 
 
 
==== 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 focusing on science and research. See [[Scientific Linux]] for details.
 
  
 +
* See [[Lazarus on Raspberry Pi]]
  
 
=== Windows ===
 
=== Windows ===
  
The current releases of the Windows Lazarus binary packages install very easily, and should work 'out-of-the-box'. Upgrading is as simple as downloading the new installer and running it.
+
* See [[Installing Lazarus on Windows]]
 
 
Win98 and WinME need a special flag to compile. You need to use make OPT="-dWIN9XPLATFORM" otherwise the lazarus.exe will not be able to run on these operating systems.
 
 
 
'''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 system after you have installed Lazarus and before you try to install additional Lazarus components such as zeoslib for 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".
 
 
 
== What does the ''bigide'' make argument do? ==
 
 
 
{{BigIDE}}
 
  
 
== Multiple Lazarus installs ==
 
== Multiple Lazarus installs ==
Line 219: Line 89:
 
== See also ==
 
== See also ==
  
* [[Lazarus Installer|Creating your own Lazarus Windows installer]]
+
* 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