GPL Linking Exception
   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 (Free software), four freedoms to run, study, share, and modify the software. The license was th ...
(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 vir ...
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 In computing, executable code, an executable file, or an executable program, sometimes simply referred to as an executable or binary, causes a computer "to perform indicated tasks according to encoded instructions", as opposed to a data fil ...
. 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 concept ...
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 GNU Classpath is a free software implementation of the standard class library for the Java programming language. Most classes from J2SE 1.4 and 5.0 are implemented. Classpath can thus be used to run Java-based applications. GNU Classpath is a p ...
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 A gnat () is any of many species of tiny flying insects in the dipterid suborder Nematocera, especially those in the families Mycetophilidae, Anisopodidae and Sciaridae. They can be both biting and non-biting. Most often they fly in large ...
,
GNU Classpath GNU Classpath is a free software implementation of the standard class library for the Java programming language. Most classes from J2SE 1.4 and 5.0 are implemented. Classpath can thus be used to run Java-based applications. GNU Classpath is a p ...
Classpath::License
Free Software Foundation. 2007-04-23. Retrieved on 2007-05-18.
and the
GCC Runtime Library Exception GCC commonly refers to: * Gulf Cooperation Council, an organization of Arab states * GNU Compiler Collection, a free and open-source cross-platform compiler GCC may also refer to: Education * Good Counsel College, Innisfail, Queensland, Australia ...
.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 software ...
, as well as all libraries of the
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 ...
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 wo ...
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 serv ...
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 GlassFish is an open-source Jakarta EE platform application server project started by Sun Microsystems, then sponsored by Oracle Corporation, and now living at the Eclipse Foundation and supported by Payara, Oracle and Red Hat. The supported v ...
and for their
NetBeans NetBeans is an integrated development environment (IDE) for Java (programming language), Java. NetBeans allows applications to be developed from a set of modular software components called ''modules''. NetBeans runs on Microsoft Windows, Windows, ...
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 GNU Classpath is a free software implementation of the standard class library for the Java programming language. Most classes from J2SE 1.4 and 5.0 are implemented. Classpath can thus be used to run Java-based applications. GNU Classpath is a p ...
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 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 A free-software license is a notice that grants the recipient of a piece of software extensive rights to modify and redistribute that software. These actions are usually prohibited by copyright law, but the rights-holder (usually the author) ...
*
GNAT Modified General Public License The GNAT Modified General Public License (short: Modified GPL, GMGPL) is a version of the GNU General Public License specifically modified for compiled units and for the generic feature found in the Ada programming language. The modification is ...
*
OpenSSL Exception OpenSSL is a software library for applications that provide secure communications over computer networks against eavesdropping or need to identify the party at the other end. It is widely used by Internet servers, including the majority of HTT ...
* Software using the GPL linking exception (category) *
GPL font exception The GPL font exception clause (or GPL+FE, for short) is an optional clause that can be added to the GNU General Public License (GNU GPL) permitting digital fonts shared with that license to be embedded within a digital document file without requ ...


References


External links

{{DEFAULTSORT:Gpl Linking Exception GNU Project Software licenses