HOME

TheInfoList



OR:

A GPL linking exception modifies the
GNU General Public License The GNU General Public License (GNU GPL or simply GPL) is a series of widely used free software licenses that guarantee end users the four freedoms to run, study, share, and modify the software. The license was the first copyleft for general ...
(GPL) in a way that enables software projects which provide
library A library is a collection of materials, books or media that are accessible for use and not just for display purposes. A library provides physical (hard copies) or digital access (soft copies) materials, and may be a physical location or a vi ...
code to be " linked to" the programs that use them, without applying the full terms of the GPL to the using program. Linking is the technical process of connecting code in a library to the using code, to produce a single executable file. It is performed either at
compile time In computer science, compile time (or compile-time) describes the time window during which a computer program is compiled. The term is used as an adjective to describe concepts related to the context of program compilation, as opposed to concep ...
or run-time in order to produce functional machine-readable code. The Free Software Foundation states that, without applying the ''linking exception'', a program linked to GPL library code may only be distributed under a GPL-compatible license. This has not been explicitly tested in court, but linking violations have resulted in settlement. The license of the GNU Classpath project explicitly includes a statement to that effect. Many free software libraries which are distributed under the GPL use an equivalent exception, although the wording of the exception varies. Notable projects include
ERIKA Enterprise ERIKA Enterprise is a real-time operating system (RTOS) kernel for embedded systems, which is OSEK/VDX certified. It is free and open source software released under a GNU General Public License (GPL). The RTOS also includes RT-Druid, an integ ...
,
GNU Guile GNU Ubiquitous Intelligent Language for Extensions (GNU Guile) is the preferred extension language system for the GNU Project and features an implementation of the programming language Scheme. Its first version was released in 1993. In addition ...
,Stallman, Richard
Various Licenses and Comments about Them
. Free Software Foundation. Published on 2007-05-17. Retrieved on 2007-05-18.
the run-time libraries of GNAT, GNU ClasspathClasspath::License
Free Software Foundation. 2007-04-23. Retrieved on 2007-05-18.
and the GCC Runtime Library Exception.GCC Runtime Library Exception
Free Software Foundation. 2009-03-31. Retrieved on 2011-10-18.
Compiler runtime libraries also often use this license modification or an equivalent one, e.g. the libgcc library in the
GNU Compiler Collection The GNU Compiler Collection (GCC) is an optimizing compiler produced by the GNU Project supporting various programming languages, hardware architectures and operating systems. The Free Software Foundation (FSF) distributes GCC as free softwar ...
, as well as all libraries of the Free Pascal project. In 2007, Sun Microsystems released most of the
source code In computing, source code, or simply code, is any collection of code, with or without comments, written using a human-readable programming language, usually as plain text. The source code of a program is specially designed to facilitate the ...
to the class libraries for the
Java SE Java Platform, Standard Edition (Java SE) is a computing platform for development and deployment of portable code for desktop and server environments. Java SE was formerly known as Java 2 Platform, Standard Edition (J2SE). The platform uses Ja ...
and
Java EE Jakarta EE, formerly Java Platform, Enterprise Edition (Java EE) and Java 2 Platform, Enterprise Edition (J2EE), is a set of specifications, extending Java SE with specifications for enterprise features such as distributed computing and web ser ...
projects under version 2 of the GPL license plus the Classpath linking exception, and used the same license as one possible license for their enterprise server GlassFish and for their NetBeans Java IDE.Netbeans license
. 2008-03-27. Retrieved on 2008-03-27.
Version 3 of the
GNU Lesser General Public License The GNU Lesser General Public License (LGPL) is a free-software license published by the Free Software Foundation (FSF). The license allows developers and companies to use and integrate a software component released under the LGPL into their own ...
(LGPL) is likewise constructed as an exception to the GPL.Guide to the second draft of LGPLv3
2007-04-03. Retrieved on 2007-05-10.


The Classpath exception

The GNU Classpath project provides an example of the use of such a GPL linking exception. The GNU Classpath library uses the following license: As such, it can be used to run, create and distribute a large class of applications and applets. When GNU Classpath is used unmodified as the core class library for a virtual machine, compiler for the Java language, or for a program written in the Java programming language it does not affect the licensing for distributing those programs directly.


The GNU Lesser General Public License

While version 2.1 of the LGPL was a standalone licence, the current
LGPL The GNU Lesser General Public License (LGPL) is a free-software license published by the Free Software Foundation (FSF). The license allows developers and companies to use and integrate a software component released under the LGPL into their own ...
version 3 is based on a reference to the GPL. Compared to the GNU Classpath license above, the LGPL formulates more requirements to the linking exception: licensees must allow modification of the portions of the library they use and reverse engineering (of their software and the library) for debugging such modifications.


See also

* * Free software licence * GNAT Modified General Public License * OpenSSL Exception * Software using the GPL linking exception (category) * GPL font exception


References


External links

{{DEFAULTSORT:Gpl Linking Exception GNU Project Software licenses