Free Component Library

Last updated
Interaction of class libraries and widgetsets in Lazarus and Free Pascal Lazarus architecture.svg
Interaction of class libraries and widgetsets in Lazarus and Free Pascal

The Free Component Library, abbreviated FCL, is a software component library for Free Pascal.

The FCL consists of a collection of units that provide components and classes for general programming tasks. Although it is intended to be compatible with Delphi's Visual Component Library (VCL) the FCL is restricted to non-visual components. On the other hand, its functionality partly exceeds that of the VCL.

Visual components are provided by the Lazarus Component Library (LCL).

The FCL is based on the Free Pascal Runtime Library (RTL).

Further reading

Related Research Articles

C++Builder is a rapid application development (RAD) environment, originally developed by Borland and as of 2009 owned by Embarcadero Technologies, for writing programs in the C++ programming language targeting Windows NT, macOS, iOS and Android. C++Builder combines the Visual Component Library and IDE written in Object Pascal with multiple C++ compilers. Most components developed in Delphi can be used in C++Builder with no or little modification, although the reverse is not true, but this constraint is valid only for source code. Binary code generated by Delphi can easily be linked to binary code generated by C++Builder and vice versa to generate an executable written in both Object Pascal and C++. With this approach, C++ can be called from Object Pascal and vice versa. Since both Delphi and C++ use the same back end linker, the debugger can single step from Delphi code into C++ transparently.

The Visual Component Library (VCL) is a visual component-based object-oriented framework for developing the user interface of Microsoft Windows applications. It is written in Object Pascal.

Component Library for Cross Platform (CLX), is a cross-platform visual component-based framework for developing Microsoft Windows and Linux applications. It is developed by Borland for use in its Kylix, Delphi, and C++ Builder software development environment.

Delphi (software) Integrated Development Environment for specific dialect of Object Pascal language

Delphi is a technology that uses the Object Pascal programming language and an integrated development environment (IDE) for rapid application development of desktop, mobile, web, and console software, currently developed and maintained by Embarcadero Technologies.

Free Pascal Free compiler and IDE for Pascal and ObjectPascal

Free Pascal Compiler (FPC) is a compiler for the closely related programming-language dialects Pascal and Object Pascal. It is free software released under the GNU General Public License, with exception clauses that allow static linking against its runtime libraries and packages for any purpose in combination with any other software license.

Borland Kylix is a compiler and integrated development environment (IDE) formerly sold by Borland, but later discontinued. It is a Linux software development environment based on Borland Delphi and Borland C++ Builder, which runs under Microsoft Windows. Continuing Delphi's classical Greek theme, Kylix is the name for an ancient Greek drinking cup. The closest supported equivalent to Kylix is the free Lazarus IDE package, designed to be code-compatible with Delphi. As of 2010 the project has been resurrected in the form of Delphi cross compiler for Mac and Linux, as shown in the Embarcadero's Delphi and C++ Builder roadmap. As of September 2011 with Kylix discontinued the framework for cross-platform development by Embarcadero is FireMonkey.

FCL may refer to:

Graphical user interface builder

A graphical user interface builder, also known as GUI designer, is a software development tool that simplifies the creation of GUIs by allowing the designer to arrange graphical control elements using a drag-and-drop WYSIWYG editor. Without a GUI builder, a GUI must be built by manually specifying each widget's parameters in source-code, with no visual feedback until the program is run.

Lazarus (IDE) Free cross-platform IDE for Free Pascal

Lazarus is a free cross-platform visual integrated development environment (IDE) for rapid application development (RAD) using the Free Pascal compiler. Its goal is to provide an easy-to-use development environment for programmers developing with the Pascal Object language, which is as close as possible to Delphi.

fpGUI

fpGUI, the Free Pascal GUI toolkit, is a cross-platform graphical user interface toolkit developed by Graeme Geldenhuys. fpGUI is open source and free software, licensed under a Modified LGPL license. The toolkit has been implemented using the Free Pascal compiler, meaning it is written in the Object Pascal language.

GLScene

GLScene is a free OpenGL-based library for the Delphi programming language, C++ and Free Pascal. It provides visual components and objects allowing description and rendering of 3D scenes.

Teechart charting library

TeeChart is a charting library for programmers, developed and managed by Steema Software of Girona, Catalonia, Spain. It is available as commercial and non-commercial software. TeeChart has been included in most Delphi and C++Builder products since 1997, and TeeChart Standard currently is part of Embarcadero RAD Studio 10.4 Sydney. TeeChart Pro version is a commercial product that offers shareware releases for all of its formats, TeeChart. Lite for .NET is a free charting component for the Microsoft Visual Studio .NET community and TeeChart for PHP is an open-source library for PHP environments. The TeeChart Charting Library offers charts, maps and gauges in versions for Delphi VCL/FMX, ActiveX, C# for Microsoft Visual Studio .NET, Java and PHP. Full source code has always been available for all versions except the ActiveX version. TeeChart's user interface is translated into 38 languages.

Project JEDI is an open source project created in 1997, which started with the goal to translate C headers to Object Pascal and share the results with fellow Delphi programmers. The name decided on was Project JEDI. Over time it evolved to include other aspects of Delphi programming: runtime library (RTL) enhancements, new visual components for the VCL and version control. Today, as a stable code collection, it is one of the largest open source Delphi libraries, and its code is widely used in the Delphi community.

FireMonkey

FireMonkey is a cross-platform GUI framework developed by Embarcadero Technologies for use in Delphi or C++Builder, using C++ or Object Pascal to build cross platform applications for Windows, macOS, iOS, and Android. A 3rd party library, FMX Linux, enables the building of FireMonkey applications on Linux.

Lazarus Component Library Visual software component library for the Lazarus IDE

The Lazarus Component Library, abbreviated LCL is a visual software component library for the Lazarus IDE.

Free Pascal Runtime Library Runtime library for Free Pascal

The Free Pascal Runtime Library, abbreviated RTL, is Free Pascal's runtime library.

Widgetset

Widgetsets support platform-sensitive development with the Lazarus IDE. They act as adapter libraries that provide an interface between a platform-inpedentent sourcecode written in Free Pascal and platform-specific system functions. Thus they allow for development of platform-native software without requiring to provide specific source code for different target platforms.

FCL-Web is part of Free Pascal's Free Component Library (FCL), focusing on web (related) application development. The package helps users to develop CGI, FastCGI and embedded web server applications, as well as Apache modules. It provides units implementing HTTP(S) protocol and a somewhat low level web application framework, in the form of web modules. Some content producers are also provided. Other prominent use is to send/retrieve data from/to web services.