HOME

TheInfoList



OR:

Borland Kylix is a
compiler In computing, a compiler is a computer program that translates computer code written in one programming language (the ''source'' language) into another language (the ''target'' language). The name "compiler" is primarily used for programs tha ...
and
integrated development environment An integrated development environment (IDE) is a software application that provides comprehensive facilities to computer programmers for software development. An IDE normally consists of at least a source code editor, build automation tools ...
(IDE) formerly sold by Borland, but later discontinued. It is a
Linux Linux ( or ) is a family of open-source Unix-like operating systems based on the Linux kernel, an operating system kernel first released on September 17, 1991, by Linus Torvalds. Linux is typically packaged as a Linux distribution, w ...
software development environment based on
Borland Delphi Delphi is a general-purpose programming language and a software product that uses the Delphi dialect of the Object Pascal programming language and provides an integrated development environment (IDE) for rapid application development of desktop, ...
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 FireMonkey (abbreviated FMX) is a cross-platform GUI framework developed by Embarcadero Technologies for use in Delphi or C++Builder, using Object Pascal or C++ to build cross platform applications for Windows, macOS, iOS, and Android. A 3r ...
.


Features

Kylix supports application programming using
Object Pascal Object Pascal is an extension to the programming language Pascal that provides object-oriented programming (OOP) features such as classes and methods. The language was originally developed by Apple Computer as ''Clascal'' for the Lisa Worksh ...
and
C++ C++ (pronounced "C plus plus") is a high-level general-purpose programming language created by Danish computer scientist Bjarne Stroustrup as an extension of the C programming language, or "C with Classes". The language has expanded significan ...
, and is particularly suited to the development of
command line A command-line interpreter or command-line processor uses a command-line interface (CLI) to receive commands from a user in the form of lines of text. This provides a means of setting parameters for the environment, invoking executables and pro ...
utilities and (especially)
GUI The GUI ( "UI" by itself is still usually pronounced . or ), graphical user interface, is a form of user interface that allows users to interact with electronic devices through graphical icons and audio indicator such as primary notation, inste ...
applications, but not well suited to low-level programming, such as the development of
device drivers In computing, a device driver is a computer program that operates or controls a particular type of device that is attached to a computer or automaton. A driver provides a software interface to hardware devices, enabling operating systems and ot ...
or kernel modules. Though it interacts poorly with many Linux
window manager A window manager is system software that controls the placement and appearance of windows within a windowing system in a graphical user interface. Most window managers are designed to help provide a desktop environment. They work in conjunctio ...
s, the IDE is basically the Delphi 5 IDE running on top of
Wine Wine is an alcoholic drink typically made from fermented grapes. Yeast consumes the sugar in the grapes and converts it to ethanol and carbon dioxide, releasing heat in the process. Different varieties of grapes and strains of yeasts are m ...
, with a fast native code compiler, and tools for code navigation, auto-completion, parameter-name tooltips, and so on. The debugger is capable, but very slow to load, and can crash the whole IDE. Kylix features CLX, a Linux version of Borland's VCL isual Component Library which is (mostly) a
component Circuit Component may refer to: •Are devices that perform functions when they are connected in a circuit.   In engineering, science, and technology Generic systems * System components, an entity with discrete structure, such as an assem ...
-based control library, not unlike
Visual Basic Visual Basic is a name for a family of programming languages from Microsoft. It may refer to: * Visual Basic .NET (now simply referred to as "Visual Basic"), the current version of Visual Basic launched in 2002 which runs on .NET * Visual Basic ( ...
or .NET's WinForms. Like other component-oriented libraries, CLX contains both visual components (such as buttons and panels) and non-visual components (such as timers). The IDE makes it easy to select components and place them on a form, editing properties and
event handler In programming and software design, an event is an action or occurrence recognized by software, often originating asynchronously from the external environment, that may be handled by the software. Computer events can be generated or triggered ...
s with an "Object Inspector". Delphi's VCL is an
object-oriented Object-oriented programming (OOP) is a programming paradigm based on the concept of " objects", which can contain data and code. The data is in the form of fields (often known as attributes or ''properties''), and the code is in the form of p ...
wrapper over raw
Win32 The Windows API, informally WinAPI, is Microsoft's core set of application programming interfaces (APIs) available in the Microsoft Windows operating systems. The name Windows API collectively refers to several different platform implementations th ...
controls, that maps Win32
message A message is a discrete unit of communication intended by the source for consumption by some recipient or group of recipients. A message may be delivered by various means, including courier, telegraphy, carrier pigeon and electronic bus. A ...
s and
API An application programming interface (API) is a way for two or more computer programs to communicate with each other. It is a type of software interface, offering a service to other pieces of software. A document or standard that describes how ...
s to
properties Property is the ownership of land, resources, improvements or other tangible objects, or intellectual property. Property may also refer to: Mathematics * Property (mathematics) Philosophy and science * Property (philosophy), in philosophy an ...
and
events Event may refer to: Gatherings of people * Ceremony, an event of ritual significance, performed on a special occasion * Convention (meeting), a gathering of individuals engaged in some common interest * Event management, the organization of ev ...
and is thus significantly easier to use than the raw API. As such, VCL is tightly bound to Windows, and Kylix's CLX is built on top of
Trolltech The Qt Company (pronounced "cute"; formerly Trolltech and Quasar Technologies) is a software company based in Espoo, Finland. It oversees the development of its Qt application framework within the Qt Project. It was formed following the acqui ...
's Qt library. CLX is not 100% compatible with VCL, and most Delphi programs require some effort to port to Kylix, even if they stick to the Borland libraries and avoid any direct OS calls. However, Qt is a portable library and, starting with Delphi 6, Borland provided CLX on Windows as well, providing a measure of back-portability.


History

On September 28, 1999, Inprise Corporation announced its development of a high performance Linux application development environment that will support C, C++, and Delphi development, code named "Kylix", with release date set for year 2000. On March 24, 2000, Inprise/Borland Corporation hosted more than 200 third-party authors, consultants, trainers and tool and component vendors for the first in a series of worldwide events designed to prepare third party products and services for Kylix. On March 7, 2001, Borland Software Corporation announced the release of Borland Kylix, after it had been offered to U.S. customers of Dell Precision 220, 420 and 620 Workstations beginning in February 2001. On October 23, 2001, Borland Software Corporation announced the release of Borland Kylix 2. On August 13, 2002 Borland Software Corporation announced the release of Borland Kylix 3. In 2005, Borland reportedly moved to discontinue Kylix development. Danny Thorpe seems to have been largely responsible for getting Borland to fund a Linux version of Delphi, and he did a lot of the work necessary to make the Delphi compiler produce Linux executables. While both Delphi and Kylix run on 32-bit Intel processors, Linux uses different register conventions than Windows and, of course, the executable and library file formats are different; see DLL,
EXE Exe or EXE may refer to: * .exe, a file extension * exe., abbreviation for executive Places * River Exe, in England * Exe Estuary, in England * Exe Island, in Exeter, England Transportation and vehicles * Exe (locomotive), a British locomotive ...
,
ELF An elf () is a type of humanoid supernatural being in Germanic mythology and folklore. Elves appear especially in North Germanic mythology. They are subsequently mentioned in Snorri Sturluson's Icelandic Prose Edda. He distinguishes "ligh ...
for details.


Legacy

In 2009 Embarcadero posted the curren
Delphi and C++ Builder roadmap
As part of project Delphi "X" cross compilation for Mac and Linux was planned. Embarcadero is planning to release a new version of Kylix (without backward compatibility), but it will not hold a special name (Kylix). It will be a part of Delphi (and C++Builder) where one can code and compile in Delphi Windows IDE and deploy to Linux. C++Builder version will be also available. This roadmap item remained a couple versions on the roadmap as point for "future versions" but disappeared from roadmaps in the XE3-4 timeframe. Parts of project X went in production with XE2 and 3 though, but for mobile targets and OS X. In 8 Feb 2016, Embarcadero Technologies, Inc. announced an updated roadmap that indicates Linux server support in upcoming RAD Studio 10.2 (code name "Godzilla") development track, aka the Fall release. Linux desktop support was not mentioned. On March 22, 2017, Embarcadero Technologies, Inc. announced the release of RAD Studio 10.2.RAD Studio 10.2 Opens Up Linux Deployment and Multi-tenancy Support for RAD Server
/ref>


See also

*
Borland Delphi Delphi is a general-purpose programming language and a software product that uses the Delphi dialect of the Object Pascal programming language and provides an integrated development environment (IDE) for rapid application development of desktop, ...
*
Free Pascal 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, witexception clausesthat allow static linking against its ...
* Lazarus *
Object Pascal Object Pascal is an extension to the programming language Pascal that provides object-oriented programming (OOP) features such as classes and methods. The language was originally developed by Apple Computer as ''Clascal'' for the Lisa Worksh ...
*
Embarcadero Technologies Embarcadero Technologies, Inc. is an American computer software company that develops, manufactures, licenses, and supports products and services related to software through several product divisions. It was founded in 1993, went public in 2000, ...


References


External links


Borland Kylix
Borland Software Corporation * Darren Kosinski
How Borland embedded Mozilla in Kylix 2
Embarcadero Technologies, Inc. {{DEFAULTSORT:Kylix (Software) Borland software Pascal (programming language) compilers Linux integrated development environments Software derived from or incorporating Wine User interface builders Linux-only proprietary software Proprietary commercial software for Linux