Lazarus (IDE)

Lazarus is a free development environment for Rapid Application Development (RAD ) with the programming languages ​​Pascal and Object Pascal, which is based on the Free Pascal compiler.

Description

Lazarus is based on Embarcadero Delphi (formerly Borland Delphi), contrary to other integrated development environments (IDE) for Pascal that have a ajar to Turbo Pascal surface. The Lazarus Component Library ( LCL) is Borland Delphi VCL very similar to. Most units, classes and properties have the same name and the same functionality. Even for proprietary software developers Lazarus is suitable because the LCL component library is licensed under the terms of a modified LGPL.

Lazarus enables the rapid creation of graphical user interfaces ( GUI) and currently provides support for the graphics libraries ( widget toolkit ) GTK and GTK2 ( with Gnome support), Qt, Carbon ( Mac OS X), Windows CE and WinAPI (Win32 Forms) to a high level of abstraction, which makes the generated code in conjunction with Free Pascal platform independent to a high degree.

Once generated source code can usually be compiled and run seamlessly on the supported operating systems (notably Linux, Mac OS X and Windows at the moment ).

The project name " Lazarus " based on the name of the biblical character Lazarus (Hebrew " God has helped "). After the project Megido failed in 1999, the developers launched a new project named Lazarus, which was developed as a visual programming environment for Free Pascal.

Functions

  • Supports multiple operating systems
  • WYSIWYG editor for creating user interfaces ( "Designer" )
  • Syntax highlighting ( highlighting of key words )
  • Code Completion ( Automatic completion )
  • Lazarus can compile itself (eg for individual optimizations )
  • Many settings
  • Delphi Projects can be ported quite easily

Platforms

Supported Platforms

In version 0.9.30 Lazarus supports the following architectures

  • PowerPC
  • PowerPC64
  • IA -32 ( Intel 80386 and compatibles )
  • AMD64 ( x86_64)
  • ARM
  • SPARC (in development)
  • M68K (in development)
  • In preparation: IA -64, MIPS, Alpha, and AVR

The following operating systems are supported:

  • Mac OS X (PowerPC and Intel)
  • Mac OS Classic (in development)
  • Android
  • Linux (x86, x86 -64, ARM)
  • Raspbian ( Raspberry Pi)
  • FreeBSD (Intel)
  • Win32
  • Win64
  • WinCE
  • OS2 (without visual programming environment )
  • Haiku (in development)
  • SunOS (in development)
  • Nintendo DS ( in development without visual programming environment )
  • Palm OS ( in development without visual programming environment )
  • Symbian OS ( in development without visual programming environment )
  • Amiga OS ( in an older version and without visual programming environment )

Lazarus on Windows

Lazarus on Windows (OS X Theme)

Lazarus under Linux (openSUSE 11, KDE environment )

Cross-platform development

Lazarus Free Pascal used as a background compiler. This can basically programs for all operating systems and processor architectures, which are supported by Free Pascal is written.

In order to more complex tasks, such as the graphical user interface support in the form designer, realizing Widget sets have been developed. These act as an interface, which connects the individual LCL classes with associated functions of the toolkit of the operating system.

Game development

There are some packages that allow the game development with Lazarus:

  • NxPascal
  • ZenGL
  • Allegro.pas
  • Castle Game Engine

Database development

Developers can install packages that allow Lazarus to support different databases. Programs can interact via the program code or components with the databases.

The following databases are supported directly:

  • PostgreSQL PSQL with the package
  • DBASE and FoxPro can be used without any external server or library with the TDbf component.
  • MySQL
  • InterBase / Firebird is working through the standard SQL DB package and the Open Source IBX for Lazarus.
  • SQLite requires an external library and the TSqliteDataset component.
  • MSSQL works with Zeoslib. FPC versions after 2.6.0 allow FreeTDS MSSQL access.
  • InterBase / Firebird also work with the latest ZeosLib.
  • SQLdb support connections with PostgreSQL, Oracle, ODBC, MySQL, SQLite and Interbase.
  • ZeosDBO, originally written for Delphi, now also works with Lazarus.
  • CSV, SDF, and Others are also supported.

Limitations

  • Lazarus is not an open source clone of Embarcadero Delphi and therefore not fully compatible. However, many works similarly.
  • Multiple media and network libraries are not yet available for all platforms.

Distributions and licensing model

As Lazarus Free Pascal is free software. Different components are made ​​under different free software licenses, including GPL, LGPL, MPL and a modified version of the LGPL.

In particular, the LCL, which is statically embedded in the generated programs is under a modified version of the LGPL, which grants special rights for the integration into the generated software and it also includes proprietary software, available.

Lazarus is officially distributed via SourceForge. However, there are alternative and partly unofficial distributions, including:

  • Versions of Lazarus Support, a commercial service provider for the development with Lazarus and FreePascal
  • Code Typhon - Distribution, a cross-platform development package with additional tools, libraries, and component packages
  • Ubuntu LiveCD with Lazarus of the University of Applied Sciences Upper Austria

Versions

Generally published versions are denoted by straight version numbers. As with Free Pascal are odd version numbers for test and development versions and snapshots. Therefore, the names of the published versions are progressing in steps of two.

502151
de