Εντολή Cppcheck στο Linux

Entole Cppcheck Sto Linux



«Για την εκτέλεση ενός αρχείου πηγαίου κώδικα, απαιτείται μεταγλωττιστής στο λειτουργικό σύστημα Linux. Για να εξετάσουμε ένα αρχείο κώδικα, χρειαζόμαστε κάποια αυτοματοποιημένα εργαλεία και εντολές. Το λειτουργικό σύστημα Linux είναι ένα λειτουργικό σύστημα ανοιχτού κώδικα και δωρεάν που προσφέρει πολλές εντολές για την εκτέλεση μιας συγκεκριμένης ενέργειας ή εργασίας. Για να εξετάσετε ένα αρχείο πηγαίου κώδικα για να βρείτε σφάλματα και σφάλματα που ένας μεταγλωττιστής ενδέχεται να μην είναι σε θέση να εντοπίσει, το Linux παρέχει μια χρήσιμη εντολή γνωστή ως cppcheck. Σε αυτό το εγχειρίδιο, θα μάθουμε τι είναι η εντολή cpp στο Linux και πώς χρησιμοποιείται για τον εντοπισμό σφαλμάτων και σφαλμάτων σε ένα αρχείο C ή C++ στο Linux.'

Τι είναι μια εντολή cppcheck στο Linux;

Το λειτουργικό σύστημα Linux παρέχει μια εντολή cppcheck για την ανάλυση ενός αρχείου πηγαίου κώδικα για σφάλματα και σφάλματα. Είναι ένα εργαλείο γραμμής εντολών που αναλύει ένα αρχείο C ή C++ για να βρει σφάλματα και σφάλματα που μπορεί να χάσει ένας μεταγλωττιστής. Μπορεί να διαχειριστεί πολλαπλές εντολές προεπεξεργαστή, μακροεντολές κ.λπ. Είναι ένα ευέλικτο, αποτελεσματικό και αξιόπιστο εργαλείο που μπορεί να ελέγχει τον κώδικα ενσωματωμένης συναρμολόγησης, τις επεκτάσεις μεταγλωττιστή, τον μη τυπικό κώδικα κ.λπ. Περιλαμβάνει διάφορους στατικούς ελέγχους που ενδέχεται να μην καλύπτονται οι ίδιοι οι μεταγλωττιστές. Αυτοί οι έλεγχοι στατικής ανάλυσης, συμπεριλαμβανομένων ελέγχων διαρροής μνήμης, ελέγχου ορίων, εξάλειψης νεκρού κώδικα, αυτόματου ελέγχου μεταβλητών, ελέγχου διαρροής πόρων κ.λπ., εκτελούνται σε επίπεδο πηγαίου κώδικα χωρίς να εκτελείται πραγματικά ο κώδικας. Συνολικά, ο σκοπός είναι να βρούμε τα πραγματικά λάθη στον κώδικα.

Πώς να ενεργοποιήσετε την εντολή cppcheck στο Linux;

Το λειτουργικό σύστημα Linux δεν εγκαθιστά αυτόματα τις βιβλιοθήκες, τα πακέτα και τις εντολές. Ο χρήστης πρέπει να εγκαταστήσει χειροκίνητα τις εντολές και τις βιβλιοθήκες στο Linux για να τις χρησιμοποιήσει. Ως εκ τούτου, το πακέτο cppcheck πρέπει να εγκατασταθεί στο λειτουργικό σύστημα Linux, ώστε η εντολή cppcheck να μπορεί να χρησιμοποιηθεί σωστά. Για να το κάνουμε αυτό, θα χρησιμοποιήσουμε την εντολή apt:









Αυτό θα εγκαταστήσει το πακέτο cppcheck και σας επιτρέπει να χρησιμοποιήσετε την εντολή cppcheck. Για να ξεκινήσετε τη διαδικασία εγκατάστασης, ίσως χρειαστεί να δώσετε τον κωδικό πρόσβασης root:







Δίνεται ο κωδικός πρόσβασης για να ξεκινήσει η διαδικασία εγκατάστασης. Μόλις ολοκληρωθεί η εγκατάσταση του πακέτου cppcheck, θα λάβετε την ακόλουθη έξοδο:



Σύνταξη της εντολής cppcheck στο Linux

Η εντολή cppcheck χρησιμοποιείται για την ανάλυση ενός αρχείου C ή C++, επομένως θα χρειαστεί το όνομα του αρχείου που θα αναλυθεί. Εδώ είναι η σύνταξη της εντολής cppcheck:

Το cppcheck είναι το όνομα της εντολής που θα αναλύσει το αρχείο για σφάλματα και σφάλματα. Η επιλογή - αναφέρεται σε μία από τις διαθέσιμες επιλογές για την εντολή cppcheck, όπως -E, -U, όλα, στυλ, προειδοποίηση, απόδοση κ.λπ. Για να αποκτήσετε τη λίστα όλων των επιλογών, η επιλογή -help χρησιμοποιείται με το cppcheck εντολή. Χρησιμοποιήστε την παρακάτω εντολή και εμφανίστε όλες τις επιλογές για την εντολή cppcheck:

Αυτό θα επιστρέψει ολόκληρη τη λίστα επιλογών με την περιγραφή τους που μπορεί να χρησιμοποιηθεί με την εντολή cppcheck. Δείτε τη λίστα παρακάτω:

Και τέλος, το όνομα/κατάλογος αρχείου αντιπροσωπεύει είτε το όνομα του αρχείου που πρέπει να αναλυθεί είτε τον κατάλογο που περιέχει το αρχείο. Εάν δεν παρέχεται το καθορισμένο όνομα αρχείου και παρέχεται ο κατάλογος, τότε η εντολή cppcheck θα αναζητήσει όλα τα αρχεία προέλευσης και θα τα ελέγξει αναδρομικά. Ας υποθέσουμε ότι έχουμε ένα αρχείο πηγαίου κώδικα που ονομάζεται 'ccode.c' και βρίσκεται στο φάκελο 'Λήψεις'. Ας το εξετάσουμε με την εντολή cppcheck:

Εδώ, η σημαία -check-config χρησιμοποιείται για τον έλεγχο της διαμόρφωσης του cppcheck. Ακολουθεί η έξοδος της παραπάνω εντολής:

Η κανονική ανάλυση κώδικα απενεργοποιείται από τη σημαία –check-config, οπότε θα δώσει τη σωστή ανάλυση. Αντίθετα, θα σας δείξει τα σφάλματα και τα σφάλματα στον κώδικα, τα οποία μπορείτε να δείτε στο παραπάνω στιγμιότυπο οθόνης.

Εκτυπώστε την έξοδο προεπεξεργαστή στο τυπικό τερματικό

Εάν πρέπει να δείτε τον κώδικα με την έξοδο του στο τυπικό stdout και δεν θέλετε να κάνετε τίποτα, τότε μπορείτε να χρησιμοποιήσετε τη σημαία -E με την εντολή cppcheck. η σημαία -E επιτρέπει στην εντολή cppcheck να εμφανίζει την έξοδο του προεπεξεργαστή στο stdout. Εδώ είναι η εκτελέσιμη εντολή:

Αυτό θα σας δώσει ό,τι έχει το αρχείο ccode.c και δεν εκτελεί καμία ενέργεια στον κώδικα. Δείτε την έξοδο παρακάτω:

Όπως μπορείτε να δείτε, η σημαία -E εμφανίζει τον κώδικα που είναι αποθηκευμένος στο αρχείο ccode.c και δεν έκανε τίποτα με αυτόν.

Ενεργοποίηση όλων των πρόσθετων ελέγχων

Οι τυπικοί έλεγχοι του cppcheck μπορεί να είναι απλώς ο έλεγχος του ενσωματωμένου κώδικα ή της επέκτασης μεταγλωττιστή. Για να ενεργοποιήσετε όλους τους άλλους ελέγχους, το cppcheck έχει μια σημαία -όλα. Αυτό επιτρέπει όλους τους ελέγχους για την εντολή cppcheck, έτσι ώστε ολόκληρο το πρόγραμμα να μπορεί να ελεγχθεί για πρόσθετους ελέγχους, συμπεριλαμβανομένης της φορητότητας, του στυλ, της προειδοποίησης κ.λπ. Ας εκτελέσουμε τη σημαία –enable με την εντολή cppcheck με την επέκταση «all» και να ενεργοποιήσουμε όλα πρόσθετους ελέγχους. Δείτε την εντολή που δίνεται στο παρακάτω στιγμιότυπο οθόνης:

Αυτό θα ενεργοποιήσει όλους τους πρόσθετους ελέγχους στο αρχείο 'ccode.c'. Εδώ είναι το αποτέλεσμα που παίρνουμε όταν εκτελούμε την παραπάνω εντολή:

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

συμπέρασμα

Αυτό το σύντομο εγχειρίδιο είναι μια γρήγορη επισκόπηση της εντολής cppcheck στο λειτουργικό σύστημα Linux. Η εντολή cppcheck στο λειτουργικό σύστημα Linux είναι ένα εργαλείο γραμμής εντολών που χρησιμοποιείται για την εξέταση ενός αρχείου πηγαίου κώδικα για την εύρεση των σφαλμάτων και των σφαλμάτων που μπορεί να χαθούν από τον ίδιο τον μεταγλωττιστή. Είναι ένα φιλικό προς το χρήστη και αποτελεσματικό εργαλείο γραμμής εντολών που επιτρέπει στον χρήστη να βρει το πρόβλημα στον κώδικα. Χρησιμοποιήσαμε ορισμένες σημαίες με την εντολή cppcheck για να ελέγξουμε τη λειτουργία της εντολής cppcheck και να δούμε πώς λειτουργεί. Εάν ακολουθήσετε αυτές τις οδηγίες και δείγματα παραδειγμάτων, θα μπορείτε να χρησιμοποιήσετε οποιαδήποτε επιλογή ή σημαία που σχετίζεται με την εντολή cppcheck.