Android GNU C++-Laufzeitlizenzierung

Die Android-Plattform bietet keine vollständige Implementierung der C++-Laufzeit. Stattdessen müssen Anwendungen, die auf Funktionen wie STL, Exceptions oder RTTI angewiesen sind, eine zusätzliche native Laufzeitbibliothek einschließen, die die benötigten Funktionen bereitstellt.

Wenn Qt mit g++ erstellt wird, verwendet es die GNU libstdc++ Bibliothek, die als Teil des Google Android NDK verteilt wird. Qt Creator kopiert diese Bibliothek in das APK für jede Qt-basierte Android-App. Die Bibliothek wird dann von der App beim Start geladen, um die Laufzeitanforderungen von Qt zu erfüllen. Die GNU C++-Laufzeitbibliothek ist unter der GNU General Public License Version 3 lizenziert, mit einer Ausnahme, die die Erlaubnis zur Laufzeitverknüpfung und Verwendung der Bibliothek durch eine Anwendung erteilt, die ansonsten die Bedingungen der Hauptlizenz verletzen würde. Weitere Informationen zu dieser Ausnahme finden Sie auf der offiziellen Lizenzseite.

Wenn Qt stattdessen mit clang gebaut wird, verwendet es die LLVM-Bibliothek libc++, die sowohl unter der "BSD-ähnlichen" Lizenz der University of Illinois als auch unter der MIT-Lizenz lizenziert ist.

Informationen über die GNU C++-Laufzeitlizenz aus den GCC-Headern

Diese Datei ist Teil der GNU ISO C++ Library. Diese Bibliothek ist freie Software; Sie können sie unter den Bedingungen der GNU General Public License, wie von der Free Software Foundation veröffentlicht, weitergeben und/oder modifizieren; entweder in Version 3 oder (nach Ihrer Wahl) in einer späteren Version.

Diese Bibliothek wird in der Hoffnung weitergegeben, dass sie nützlich sein wird, aber OHNE JEGLICHE GARANTIE; sogar ohne die implizite Garantie der MARKTREIFE oder der EIGNUNG FÜR EINEN BESTIMMTEN ZWECK. Siehe die GNU General Public License für weitere Einzelheiten.

Gemäß Abschnitt 7 der GPL Version 3 werden Ihnen zusätzliche Rechte gewährt, die in der GCC Runtime Library Exception, Version 3.1, wie von der Free Software Foundation veröffentlicht, beschrieben sind.

Sie sollten eine Kopie der GNU General Public License und eine Kopie der GCC Runtime Library Exception zusammen mit diesem Programm erhalten haben; siehe die Dateien COPYING3 bzw. COPYING.RUNTIME. Falls nicht, siehe <http://www.gnu.org/licenses/>.

Die GCC-Laufzeitbibliotheksausnahme

GCC-LAUFZEITBIBLIOTHEK-AUSNAHME

Version 3.1, 31. März 2009

Copyright (C) 2009 Free Software Foundation, Inc.

Jedem ist es gestattet, wortwörtliche Kopien dieses Lizenzdokuments zu kopieren und zu verbreiten, aber es darf nicht verändert werden.

Diese GCC Runtime Library Exception ("Exception") ist eine zusätzliche Erlaubnis unter Abschnitt 7 der GNU General Public License, Version 3 ("GPLv3"). Sie gilt für eine bestimmte Datei (die "Laufzeitbibliothek"), die einen vom Urheberrechtsinhaber der Datei angebrachten Hinweis trägt, der besagt, dass die Datei zusammen mit dieser Ausnahme unter die GPLv3 fällt.

Wenn Sie GCC zum Kompilieren eines Programms verwenden, kann GCC Teile bestimmter GCC-Header-Dateien und Laufzeitbibliotheken mit dem kompilierten Programm kombinieren. Der Zweck dieser Ausnahme ist es, die Kompilierung von Nicht-GPL-Programmen (einschließlich proprietärer Programme) zu ermöglichen, um auf diese Weise die von dieser Ausnahme abgedeckten Header-Dateien und Laufzeitbibliotheken zu verwenden.

0. Definitionen.

Eine Datei ist ein "unabhängiges Modul", wenn sie entweder die Laufzeitbibliothek zur Ausführung nach einem Kompilierungsprozess benötigt oder eine von der Laufzeitbibliothek bereitgestellte Schnittstelle nutzt, aber ansonsten nicht auf der Laufzeitbibliothek basiert.

"GCC" bezeichnet eine Version der GNU Compiler Collection, mit oder ohne Modifikationen, die der Version 3 (oder einer spezifizierten späteren Version) der GNU General Public License (GPL) unterliegt, mit der Option, spätere von der FSF veröffentlichte Versionen zu verwenden.

"GPL-kompatible Software" ist Software, deren Verbreitungs-, Modifizierungs- und Verwendungsbedingungen eine Kombination mit dem GCC in Übereinstimmung mit der Lizenz des GCC zulassen würden.

"Zielcode" bezieht sich auf die Ausgabe eines beliebigen Compilers für eine reale oder virtuelle Zielprozessorarchitektur, in ausführbarer Form oder geeignet für die Eingabe in einen Assembler, Lader, Linker und/oder die Ausführungsphase. Dessen ungeachtet umfasst der Zielcode keine Daten in einem Format, das als Compiler-Zwischendarstellung verwendet wird oder zur Erzeugung einer Compiler-Zwischendarstellung dient.

Der "Kompilierungsprozess" wandelt Code, der vollständig in Nicht-Zwischensprachen, die für von Menschen geschriebenen Code konzipiert sind, und/oder in Bytecode der Java Virtual Machine dargestellt ist, in Zielcode um. So muss zum Beispiel die Verwendung von Quellcodegeneratoren und Präprozessoren nicht als Teil des Kompilierungsprozesses angesehen werden, da der Kompilierungsprozess so verstanden werden kann, dass er mit der Ausgabe der Generatoren oder Präprozessoren beginnt.

Ein Kompilierungsprozess ist "förderfähig", wenn er unter Verwendung von GCC, allein oder mit anderer GPL-kompatibler Software, oder ohne Verwendung von auf GCC basierenden Arbeiten durchgeführt wird. Die Verwendung von nicht GPL-kompatibler Software zur Optimierung von GCC-Zwischendarstellungen würde beispielsweise nicht als zulässiger Kompilierungsprozess gelten.

1. Erteilung einer zusätzlichen Erlaubnis.

Sie haben die Erlaubnis, ein Werk aus Zielcode zu verbreiten, das durch die Kombination der Laufzeitbibliothek mit unabhängigen Modulen gebildet wurde, selbst wenn eine solche Verbreitung andernfalls die Bedingungen der GPLv3 verletzen würde, vorausgesetzt, dass der gesamte Zielcode durch berechtigte Kompilierungsprozesse erzeugt wurde. Sie können dann eine solche Kombination unter Bedingungen Ihrer Wahl weitergeben, die mit der Lizenzierung der Unabhängigen Module übereinstimmen.

2. Keine Schwächung des GCC Copyleft.

Die Verfügbarkeit dieser Ausnahme impliziert nicht die allgemeine Annahme, dass Software von Dritten von den Copyleft-Anforderungen der GCC-Lizenz unberührt bleibt.

Informationen über die LLVM C++-Laufzeitlizenz

============================================================================== libc++ License ==============================================================================

Die libc++-Bibliothek steht unter der "BSD-ähnlichen" Lizenz der University of Illinois und der MIT-Lizenz. Als Benutzer dieses Codes können Sie wählen, ob Sie ihn unter einer der beiden Lizenzen verwenden möchten. Als Mitwirkender stimmen Sie zu, dass Ihr Code unter beiden Lizenzen verwendet werden darf.

Der vollständige Text der relevanten Lizenzen ist unten enthalten.

==============================================================================

Universität von Illinois/NCSA Open Source Lizenz

Copyright (c) 2009-2017 durch die in CREDITS.TXT aufgeführten Mitwirkenden

Alle Rechte vorbehalten.

Entwickelt von:

LLVM-Team

Universität von Illinois in Urbana-Champaign

http://llvm.org

Hiermit wird jeder Person, die eine Kopie dieser Software und der zugehörigen Dokumentationsdateien (die "Software") erwirbt, kostenlos die Erlaubnis erteilt, uneingeschränkt mit der Software umzugehen, einschließlich und ohne Einschränkung der Rechte, Kopien der Software zu verwenden, zu kopieren, zu modifizieren, zusammenzuführen, zu veröffentlichen, zu vertreiben, zu unterlizenzieren und/oder zu verkaufen, und Personen, denen die Software zur Verfügung gestellt wird, dies zu gestatten, vorbehaltlich der folgenden Bedingungen:

* Weiterverteilungen des Quellcodes müssen den obigen Copyright-Vermerk, diese Liste von Bedingungen und die folgenden Haftungsausschlüsse enthalten.

* Weiterverteilungen in binärer Form müssen den obigen Copyright-Vermerk, diese Liste der Bedingungen und die folgenden Haftungsausschlüsse in der Dokumentation und/oder anderen Materialien, die mit der Verteilung bereitgestellt werden, wiedergeben.

* Weder die Namen des LLVM-Teams, der University of Illinois at Urbana-Champaign, noch die Namen der Mitwirkenden dürfen verwendet werden, um Produkte, die von dieser Software abgeleitet sind, ohne ausdrückliche vorherige schriftliche Genehmigung zu unterstützen oder zu bewerben.

DIE SOFTWARE WIRD OHNE MÄNGELGEWÄHR UND OHNE JEGLICHE AUSDRÜCKLICHE ODER STILLSCHWEIGENDE GARANTIE BEREITGESTELLT, EINSCHLIESSLICH, ABER NICHT BESCHRÄNKT AUF DIE GARANTIE DER MARKTGÄNGIGKEIT, DER EIGNUNG FÜR EINEN BESTIMMTEN ZWECK UND DER NICHTVERLETZUNG VON RECHTEN. UNTER KEINEN UMSTÄNDEN SIND DIE MITWIRKENDEN ODER URHEBERRECHTSINHABER HAFTBAR FÜR JEGLICHE ANSPRÜCHE, SCHÄDEN ODER ANDERE HAFTUNGEN, SEI ES DURCH VERTRAG, UNERLAUBTE HANDLUNGEN ODER ANDERWEITIG, DIE SICH AUS DER SOFTWARE ODER DER NUTZUNG ODER DEM UMGANG MIT DER SOFTWARE ERGEBEN.

==============================================================================

Copyright (c) 2009-2014 durch die in CREDITS.TXT aufgeführten Mitwirkenden

Hiermit wird jeder Person, die eine Kopie dieser Software und der zugehörigen Dokumentationsdateien (die "Software") erwirbt, kostenlos die Erlaubnis erteilt, uneingeschränkt mit der Software zu handeln, einschließlich und ohne Einschränkung der Rechte, Kopien der Software zu verwenden, zu kopieren, zu modifizieren, zusammenzuführen, zu veröffentlichen, zu vertreiben, zu unterlizenzieren und/oder zu verkaufen, und Personen, denen die Software zur Verfügung gestellt wird, dies unter den folgenden Bedingungen zu erlauben:

Der obige Copyright-Hinweis und dieser Genehmigungshinweis müssen in allen Kopien oder wesentlichen Teilen der Software enthalten sein.

DIE SOFTWARE WIRD OHNE MÄNGELGEWÄHR UND OHNE JEGLICHE AUSDRÜCKLICHE ODER STILLSCHWEIGENDE GARANTIE ZUR VERFÜGUNG GESTELLT, EINSCHLIESSLICH, ABER NICHT BESCHRÄNKT AUF DIE GARANTIE DER MARKTGÄNGIGKEIT, DER EIGNUNG FÜR EINEN BESTIMMTEN ZWECK UND DER NICHTVERLETZUNG VON RECHTEN. IN KEINEM FALL HAFTEN DIE AUTOREN ODER URHEBERRECHTSINHABER FÜR JEGLICHE ANSPRÜCHE, SCHÄDEN ODER SONSTIGE HAFTUNG, SEI ES AUS VERTRAG, UNERLAUBTER HANDLUNG ODER ANDERWEITIG, DIE SICH AUS DER SOFTWARE ODER DER NUTZUNG ODER DEM SONSTIGEN UMGANG MIT DER SOFTWARE ERGEBEN ODER DAMIT ZUSAMMENHÄNGEN.

© 2025 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.