Debian mit Clang übersetzt

29.02.2012

Zum Test hat ein Entwickler über 15000 Debian-Pakete mit dem Clang-Compiler übersetzt. Die Ergebnisse sind überraschend gut.

Der Debian-Entwickler Sylvestre Ledu hat die beinahe 16000 Software-Pakete der Debian-Distribution zum Test mit dem Clang-Compiler des LLVM-Projekts übersetzt. Das hat mit Clang 3.0 bei über 90 Prozent der Pakete problemlos funktioniert. In 8,8 Prozent der Fälle traten Fehler auf. Mit Clang 2.9 waren es noch über 14,5 Prozent. Die großen Fortschritte bei der Verbesserung von Clang führt Ledu darauf zurück, dass beispielsweise die Google-Projekte Chrome und Chromium standardmäßig mit Clang übersetzt werden, das FreeBSD-Projekt wegen der bevorstehenden Migration zu Clang viel an dem Compiler arbeitet und Clang als Option in der Xcode-IDE von Apple zur Verfügung steht, das bei der Entwicklung von LLVM federführend ist.

Die Website http://clang.debian.net/ dokumentiert im Einzelnen, aus welchen Gründen die Übersetzung gescheitert ist. Beispielsweise verwendet der GNU-Compiler per Default den Standard GNU89, während Clang per Default nach C99 übersetzt. Auch linken die GNU-Tools standardmäßig die Mathematikbibliothek Libm dazu, während man den Clang-Compiler extra dazu anweisen muss.

Dem Forschungsziel, zu untersuchen, ob sich Clang als Default-Compiler für Debian eignet, ist Ledu durch das Experiment etwas näher gekommen. Er will nun ein Projekt für Googles Summer of Code einreichen, das Clang in das automatisierte Build-System von Debian integriert. Ein weiteres Vorhaben soll die GNU-Standard-C++-Bibliothek "libstdc++" durch die Alternative "libc++" des LLVM-Projekts ersetzen. Bevor Clang bei Debian endgültig den nach Meinung von Ledu in die Jahre gekommenen GCC ersetzen kann, müsse jedoch sichergestellt sein, dass es für alle der ingesamt 17 von Debian unterstützten Rechnerarchitekturen korrekten Code erzeugt.

Ähnliche Artikel

comments powered by Disqus
Mehr zum Thema

LLVM-Compiler 2.8 implementiert C++-ISO-Standards

 In Version 2.8 implementiert das LLVM-Compiler-Framework die ISO-1998- und -2003-Standards für C++.

Artikel der Woche

Setup eines Kubernetes-Clusters mit Kops

Vor allem für Testinstallationen von Kubernetes gibt es einige Lösungen wie Kubeadm und Minikube. Für das Setup eines Kubernetes-Clusters in Cloud-Umgebungen hat sich Kops als Mittel der Wahl bewährt. Wir beschreiben seine Fähigkeiten und geben eine Anleitung für den praktischen Einsatz. (mehr)
Einmal pro Woche aktuelle News, kostenlose Artikel und nützliche ADMIN-Tipps.
Ich habe die Datenschutzerklärung gelesen und bin einverstanden.

Container

Wie setzen Sie Container ein?

  • Gar nicht
  • Docker standalone
  • Docker mit Kubernetes
  • Docker mit Swarm
  • Docker mit anderem Management
  • LXC/LXD
  • Rocket
  • CRI-O auf Kubernetes
  • Container auf vSphere
  • Andere (siehe Kommentare auf der Ergebnisseite)

Google+

Ausgabe /2018

Microsite