Αποτελέσματα αναδόμησης της βάσης δεδομένων πακέτων Debian χρησιμοποιώντας Clang 10

Sylvestre Ledru δημοσιεύεται το αποτέλεσμα της αναδόμησης του αρχείου πακέτων του Debian GNU/Linux χρησιμοποιώντας τον μεταγλωττιστή Clang 10 αντί του GCC. Από τα 31014 πακέτα, τα 1400 (4.5%) δεν μπόρεσαν να κατασκευαστούν, αλλά με την εφαρμογή μιας πρόσθετης ενημέρωσης κώδικα στην εργαλειοθήκη του Debian, ο αριθμός των μη κατασκευασμένων πακέτων μειώθηκε σε 1110 (3.6%). Για σύγκριση, κατά την κατασκευή στο Clang 8 και 9, ο αριθμός των πακέτων που δεν μπορούσαν να κατασκευαστούν παρέμεινε στο 4.9%.

Το πείραμα κατασκευής επικεντρώθηκε σε 250 προβλήματα που προκλήθηκαν από ατυχήματα λόγω Λάθη στο Qmake και 177 τεύχη, σχετίζεται με με τη δημιουργία διαφόρων συμβόλων στις βιβλιοθήκες. Προσθέτοντας μια απλή ενημερωμένη έκδοση κώδικα στα dpkg-gensymbols για την αντιμετώπιση ενός σφάλματος σύγκρισης συμβόλων κατά τη σύνδεση ως προειδοποίηση και αντικαθιστώντας τα αρχεία διαμόρφωσης g++ στο qmake, μπορέσαμε να διορθώσουμε αστοχίες για τη δημιουργία περίπου 290 πακέτων.

Από τα υπόλοιπα πρόβλημα, που οδηγεί σε αποτυχία κατασκευής στο Clang, τα πιο συνηθισμένα σφάλματα οφείλονται στην απουσία ορισμένων αρχείων κεφαλίδας, στη μετάδοση τύπων, στην έλλειψη χώρου μεταξύ ενός κυριολεκτικού και ενός αναγνωριστικού, σε προβλήματα με τη σύνδεση, στην αποτυχία επιστροφής μιας τιμής από μια μη κενή συνάρτηση , χρησιμοποιώντας μια διατεταγμένη σύγκριση ενός δείκτη με null , έλλειψη ορισμών.

Πηγή: opennet.ru

Προσθέστε ένα σχόλιο