Ergebnisse der Neuerstellung der Debian-Paketdatenbank mit Clang 10

Sylvestre Ledru опубликовал das Ergebnis der Neuerstellung des Debian GNU/Linux-Paketarchivs mit dem Clang 10-Compiler anstelle von GCC. Von den 31014 Paketen konnten 1400 (4.5 %) nicht erstellt werden, aber durch die Anwendung eines zusätzlichen Patches auf das Debian-Toolkit wurde die Anzahl der nicht erstellten Pakete auf 1110 (3.6 %) reduziert. Zum Vergleich: Beim Erstellen in Clang 8 und 9 blieb die Anzahl der Pakete, die nicht erstellt werden konnten, bei 4.9 %.

Das Build-Experiment konzentrierte sich auf 250 Probleme, die durch Abstürze verursacht wurden Fehler in Qmake und 177 Ausgaben, verbunden mit der Generierung verschiedener Symbole in Bibliotheken. Durch das Hinzufügen eines einfachen Patches zu dpkg-gensymbols, um einen Symbolvergleichsfehler beim Verknüpfen als Warnung zu behandeln, und durch das Ersetzen der g++-Konfigurationsdateien in qmake konnten wir Fehler beim Erstellen von etwa 290 Paketen beheben.

Von dem Rest проблем, was zu einem Build-Fehler in Clang führt. Die häufigsten Fehler sind auf das Fehlen einiger Header-Dateien, Typumwandlung, fehlendes Leerzeichen zwischen einem Literal und einem Bezeichner, Probleme mit der Bindung und das Scheitern der Rückgabe eines Werts aus einer nicht leeren Funktion zurückzuführen , Verwendung eines geordneten Vergleichs eines Zeigers mit null , fehlende Definitionen.

Source: opennet.ru

Kommentar hinzufügen