Software Development Kit

Ein Software Development Kit (SDK) ist eine Sammlung von Programmierwerkzeugen und Programmbibliotheken, die zur Entwicklung von Software dient. Es unterstützt Softwareentwickler, darauf basierende Anwendungen zu erstellen. In der Regel gibt es zu jeder Programmiersprache ein Software Development Kit, bei interpretierten Sprachen kann dieses jedoch identisch mit der Laufzeitumgebung sein.

Eine besondere Rolle nehmen SDKs für Betriebssysteme ein. Sie enthalten die notwendigen Compiler, Dienstprogramme und Informationen, um für dieses überhaupt Software zu entwickeln. Basis dafür ist eine sogenannte Toolchain.

Der Bezug eines SDK kann vom Softwarehersteller an die Einhaltung bestimmter Regeln, insbesondere die Wahrung der Vertraulichkeit gewisser Informationen (engl. Non-Disclosure Agreement), geknüpft werden. Oft wird das SDK jedoch zum freien Download auf Internetseiten angeboten.

Einige SDKs werden mit Lizenzen ausgeliefert, die verhindern sollen, dass die mit ihnen erstellte Software unter einer anderen, inkompatiblen Lizenz veröffentlicht wird. Zum Beispiel ist ein proprietäres SDK ungeeignet für die Entwicklung freier Software, während ein mit der GPL-lizenziertes SDK nicht für proprietäre Softwareentwicklung geeignet ist. SDKs mit der LGPL sind normalerweise sicher für proprietäre Softwareentwicklung.[1] Solche Lizenzfragen traten zum Beispiel bei Qt auf und resultierten u. a. in der Entwicklung der Desktop-Umgebung Gnome als Ersatz für KDE.

Manche Hersteller verwenden andere Bezeichnungen als SDK – so z. B. das Java Development Kit JDK speziell für die Programmiersprache Java.

  1. Heise News zu Lizenzen von Qt

Developed by StudentB