Προς το περιεχόμενο

[Λύθηκε] g++: Internal error


firewalker

Προτεινόμενες αναρτήσεις

Τις τελευταίες μέρες όταν πάω να κάνω κάποιο πρόγραμμα compile παίρνω το παρακάτω σφάλμα.

 

g++: Internal error: Segmentation fault (program cc1plus)

 

Segmetation fault; Τόσο σοβαρό σφάλμα; Το θέμα είναι ότι αν επαναλάβω την διαδικασία του compile μπορεί και να μην το βγάλει, να γίνει κανονικά. Συνήθως προκύπτει σε εφαρμογές με "βαρύ" Compile. Έχω gcc-4.1.2 και πριν δεν είχα κανένα πρόβλημα. Στο σύστημα δεν έχουν γίνει σημαντικές αλλαγές. Έχω δοκιμάσει με kernel-2.6.19, kernel-2.6.20, kernel-2.6.20-beyond, kernel-2.6.20-viper.

 

Έκανα μερικά search στο Google και βρήκα κάτι posts σχετικά με "εξάντληση" της υπάρχουσας μνήμης. Επίσης βρήκα και μια υποβολή bug από το 2001 που δεν έχει λυθεί. Έχει τύχει σε κανέναν;

Συνδέστε για να σχολιάσετε
Κοινοποίηση σε άλλες σελίδες

Μέχρι τώρα δεν έχει βγάλει κάποιο error. Θα το αφήσω να κάνει μερικά passes. Μήπως για κάποιο λόγο ο compiler ζητά όλο και περισσότερη διαθέσιμη μνήμη και όταν εξαντλήτε "σκάει";

Συνδέστε για να σχολιάσετε
Κοινοποίηση σε άλλες σελίδες

Όχι το linux και ο compiler είναι αρκετά έξυπνα για να αντιμετωπίσουν κάτι τέτοιο με ομαλό τρόπο.

 

Κι εγώ όσες φορές έχω δει segmentation fault μήνυμα οφειλόταν σε δυσλειτουργία του επεξεργαστή ή της μνήμης (ή σε λάθος κώδικα, που όμως αφού χτυπάει το compile σε πολλές εφαρμογές δεν ισχύει).

Συνδέστε για να σχολιάσετε
Κοινοποίηση σε άλλες σελίδες

Μήπως ανεβάζει θερμοκρασία ο επεξεργαστής;

 

Να σου την αλήθεια δεν τον κοίταξα. Αλλά το υπόλοιπο σύστημα δεν τραβάει κόλλημα την ώρα που βγάζει το error. Όλα λειτουργούν ικανοποιητικά. Όπως και σε ένα compile που πάει κανονικά. Ποιο αργά βεβαία, αλλά όπως πήγαινε κάθε φορά. Θα κοιτάξω και την θερμοκρασία για κάθε ενδεχόμενο.

Συνδέστε για να σχολιάσετε
Κοινοποίηση σε άλλες σελίδες

Δεν τσεκάρεις μία και το MD5 checksum του πακέτου που προσπαθείς να κάνεις compile...;

 

Το πρώτο που έκανα. Άλλωστε το έκανα compile σε άλλο μηχάνημα με επιτυχία.

Συνδέστε για να σχολιάσετε
Κοινοποίηση σε άλλες σελίδες

Στήσε σωστά το lm_sensors και δες τι θερμοκρασίες και τι τάσεις έχει το σύστημα εκείνη την ώρα. Το segmentation fault στο compile πάντως και μάλιστα όταν συμβαίνει σε τυχαία σημεία, όπως είπε και ο nske, συνήθως οφείλεται σε πρόβλημα στο h/w.

Συνδέστε για να σχολιάσετε
Κοινοποίηση σε άλλες σελίδες

Τώρα που σφήξαν λίγο η ζέστες... Λοιπόν δοκίμασα και αποσύνδεσα τον ανεμιστήρα της cpu και το error πεταγόταν αμέσως! Αύξησα τις στροφές του και τώρα όλα ok. Σας ευχαριστώ όλους. Η απορία μου όμως είναι πως και δεν κόλλαγε όλο το σύστημα. Τέλος πάντων. Ο καλός μας moderator ας το επισημάνει με ένα solved στον τίτλο.

Συνδέστε για να σχολιάσετε
Κοινοποίηση σε άλλες σελίδες

Δεν κόλλαγε όλο το σύστημα γιατί τουλάχιστον το 90% των πράξεων που έκανε ο επεξεργαστής ήταν για λογαριασμό του gcc, οπότε ήταν πολύ πιο πιθανό το λάθος να γίνει σε πράξη του gcc. Αν το ποσοστό λάθους ήταν π.χ. 0,01%, θα ήταν αρκετά μικρό για να μην ενοχληθούν σύντομα τυπικές εφαρμογές που εκτελούνται ήδη (και έχουν αποθηκεύσει τα περισσότερα πράγματα στη μνήμη) και να ενοχληθεί ένας compiler που υπολογίζει συνέχεια καινούρια δεδομένα.

 

Αν είναι οριακή η θερμοκρασία δες μήπως θέλει ανανέωση και η θερμαγώγιμη κρέμα ανάμεσα στον επεξεργαστή και την ψήκτρα.

 

ΥΣ. μπορείς να βάλεις κι εσύ solved στον τίτλο (edit το πρώτο post > επεξεργαστής κειμένου) ;)

Συνδέστε για να σχολιάσετε
Κοινοποίηση σε άλλες σελίδες

Αρχειοθετημένο

Αυτό το θέμα έχει αρχειοθετηθεί και είναι κλειστό για περαιτέρω απαντήσεις.

  • Δημιουργία νέου...