Difference between revisions of "Installing Lazarus"

From Free Pascal wiki
Jump to navigationJump to search
(moved fpcup up a level, its not unique to Debian/Ubuntu, merge different Debian sections)
(Restructured Installing section to make intention clearer)
Line 61: Line 61:
 
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 ).  
 
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 ).  
  
=== Ubuntu/Debian Linux ===
+
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 !).
  
Please See [[Installing Lazarus on Linux]]. 
+
=== Installing Lazarus on Linux ===
  
{{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.
+
Please See [[Installing Lazarus on Linux]].  
(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.  
+
* 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.  
  
'''Debian Testing'''
+
==== Ubuntu/Debian Linux ====
 
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'''
+
* '''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>
  
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]]
+
* '''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) ===
+
==== Arch or Manjaro Linux (aarch64) ====
  
 
To install Free Pascal and Lazarus, see [[Install on aarch64 Arch or Manjaro]].
 
To install Free Pascal and Lazarus, see [[Install on aarch64 Arch or Manjaro]].
  
=== Fedora Linux ===
+
==== 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.
 
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 ====
  
Scientific Linux is an RPM-based distribution focussing on science and research. See [[Scientific Linux]] for details.  
+
Scientific Linux is an RPM-based distribution focusing on science and research. See [[Scientific Linux]] for details.  
  
 
=== From source on Linux ===
 
 
See [[Installing Lazarus on Linux]]
 
  
 
=== Windows ===
 
=== Windows ===
Line 135: Line 130:
 
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.
 
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 ===
+
==== From source on Windows ====
  
 
If you prefer to install from sources, then follow these instructions.
 
If you prefer to install from sources, then follow these instructions.

Revision as of 01:25, 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

A real "in depth" build guide is here.

For binary downloads of Lazarus see Download and install Lazarus release version.

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.

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
  • IDE - the RAD tool

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 Lazarus

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

While the remainder of this page has much valuable information, many users may need no more than the following operating system specific guides.

FreeBSD

Haiku

Linux

macOS

Raspbian

Windows

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.

Installing Lazarus

Some people recommended to use 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 ).

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>

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 on how to install them.

Scientific Linux

Scientific Linux is an RPM-based distribution focusing on science and research. See Scientific Linux for details.


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.

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:

set THUMBDRIVE=%CD:~0,2%

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:

%SystemRoot%\system32\cmd.exe /k bin\setenv

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 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):

copy %THUMBDRIVE%\lazarus\environmentoptions.xml %THUMBDRIVE%\lazarus\environmentoptions.bak
sed -e 's/%1/%THUMBDRIVE%/g' %THUMBDRIVE%\lazarus\environmentoptions.bak > %THUMBDRIVE%\lazarus\environmentoptions.xml

So to use it, I would type at the command prompt of the USB drive:

fixlaz G:

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 mirror for details. You can also use git directly with SubVersion server using git-svn link. See 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 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):

mkdir c:\lazarus
cd /d c:\lazarus
svn checkout http://svn.freepascal.org/svn/lazarus/trunk/ c:\lazarus

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

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
  • 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:

cd "YourLazarusDir"\examples
make

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

SET PATH=$(LazarusDir)\fpc\2.6.4\bin\i386-win32\
make bigide

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:

$(LazarusDir)\startlazarus.exe --pcp=$(LazarusDir)\configdir

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?

The bigide make argument adds a bunch of packages to Lazarus that many find useful and cannot do without. The packages that are added are:

  • cairocanvas
  • chmhelp
  • datetimectrls
  • externhelp
  • fpcunit
  • fpdebug
  • instantfpc
  • jcf2
  • lazcontrols
  • lazdebuggers
  • lclextensions
  • leakview
  • macroscript
  • memds
  • onlinepackagemanager
  • pas2js
  • PascalScript
  • printers
  • projecttemplates
  • rtticontrols
  • sdf
  • sqldb
  • synedit
  • tachart
  • tdbf
  • todolist
  • turbopower_ipro
  • virtualtreeview

The above list is sourced from the [Lazarus source directory]/IDE/Makefile.fpc and may be subject to change.

Note that if you have not compiled your own Lazarus IDE with the bigide argument, you can install any of these packages yourself using the Lazarus IDE Package > Install/Uninstall Packages... dialog.

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