OpenSource Risk Experts
Map your blast radius

GLOSSARY

What is a linking exception?

A linking exception is an explicit permission added to a copyleft license that lets you link to the covered code without your own program being pulled into the copyleft. This glossary entry defines it plainly for enterprises and explains why it matters.

Commercial and licensing risk advisory, not legal advice.

Definition

A linking exception is an explicit permission that a copyright holder attaches to a copyleft license, granting the right to link to the covered code from a separate program without that program inheriting the copyleft. To see why it exists, start with the default. Under strong copyleft, combining the covered code with your own can create a single work governed by the copyleft, which would require you to make your code available under the same terms. There has long been debate about whether linking, as opposed to copying source, creates that combined work. A linking exception removes the debate for the covered project. It states plainly that you may link to the library and keep your own program under whatever license you choose, subject to whatever conditions the exception sets.

Why it matters to enterprises

For a business shipping proprietary software, a linking exception can be the difference between a component being usable and being off limits. Without one, linking your application to a strong copyleft library invites the argument that your application has become subject to the copyleft and must be released as source. That is rarely a risk a commercial product can accept. With a linking exception, the library can be used as intended, linked into a proprietary program, without that consequence. The classic example is the runtime libraries that ship with the GCC compiler, which carry an exception so that programs compiled with GCC are not themselves forced open. The practical lesson is that the same underlying license can carry very different risk depending on whether an exception applies, so a license name alone does not tell you the answer.

This is why a dependency review records not just the license of each component but any exception attached to it. A copyleft library with a linking exception and the same library without one belong in different risk categories.

How it relates to the LGPL and copyleft

A linking exception achieves for a specific project what the GNU Lesser General Public License achieves as a whole license. The LGPL is designed so that linking to the covered library does not extend its copyleft to your program, subject to conditions, and is covered in the glossary entry on what is LGPL. A linking exception is the narrower instrument: an add on to an otherwise stronger copyleft license, such as the GPL, that grants the same linking freedom for one project. Understanding both depends on understanding the default rule they modify, which is set out in the glossary entry on copyleft. For the surrounding vocabulary, browse the full open source license risk glossary.

COMMON QUESTIONS

Questions buyers ask.

What is a linking exception?

A linking exception is an explicit permission added to a copyleft license that lets you link to the covered code from your own program without that program becoming subject to the copyleft. It loosens the default rule so that linking alone does not pull your proprietary code into the source sharing obligation.

Why does a linking exception matter to enterprises?

Without an exception, linking your application to a strong copyleft library can, on some readings, extend the copyleft to your application and require you to share its source. A linking exception removes that ambiguity for the covered library, which is why the presence or absence of one changes how safely a component can be used in a proprietary product.

How is a linking exception different from the LGPL?

The LGPL is a whole license designed so that linking does not extend its copyleft to your program, subject to conditions. A linking exception is a narrower add on, attached to an otherwise stronger copyleft license such as the GPL, that grants the same linking freedom for a specific project, the GCC runtime libraries being a well known example.

Should we rely on a linking exception without checking?

No. The exact wording of an exception sets its scope and conditions, and those vary by project. Confirm the exception applies to your use, that you meet its conditions, and document the finding. For interpretation of a specific exception, your own counsel is the right place to turn.

FIND YOUR COPYLEFT EXPOSURE

Know which copyleft components carry an exception.

A confidential open source license risk assessment. Independent, buyer side, paid only by you.

Not ready to talk? Read the free open source license risk guides first.

Start an open source license risk assessment