Title: Προβλήμα σε τρέξιμο προγράμματος Post by: tolos on March 29, 2010, 15:02:20 pm Είχα ένα στημένο Kubuntu 7.10 και χρησιμοποιούσα κάποια προγράμματα πεπερασμένων στοιχείων γραμμένα από τον καθηγητή μου. Τώρα προσπαθώ να τα ξαναεγκαταστήσω (πάλι σε Kubuntu 7.10, επίσης προσπάθησα και σε Kubuntu 9.10) και μου προκύπτει σφάλμα.
Θέλω να δημιουργήσω το εκτελέσιμο αρχείο τρέχοντας το Μakefile (στο οποίο κάνω include κάποιες βιβλιοθήκες των X windows). To compilation γινεται όμως όταν πάω να τρέξω το πρόγραμμα μου λέει "Segmentation fault (core dumped)". Ξέρει κανείς τι μπορεί να πηγαίνει λάθος; Το παράξενο είναι ότι στο προηγούμενο σύστημα έτρεχε κανονικά (άρα δεν πρέπει να είναι λάθος του κώδικα). Τι μπορεί να έχει αλλάξει;; Title: Re: Προβλήμα σε τρέξιμο προγράμματος Post by: creat.ure on March 29, 2010, 16:16:53 pm Θέλεις να βάλεις όλο το μήνυμα μήπως και βρούμε τπτ? Segmentation fault αναφέρεται στη μνήμη νομίζω
Title: Re: Προβλήμα σε τρέξιμο προγράμματος Post by: Καμένος on March 29, 2010, 16:24:59 pm Κάπου βγαίνει εκτός μνήμης. Λογικά φταίει η αλλαγή του compiler..
Title: Re: Προβλήμα σε τρέξιμο προγράμματος Post by: Axel on March 29, 2010, 18:50:11 pm Εγκατέστησε τον gdb και άνοιξε με αυτόν το core file να δεις σε ποιο σημείο έσκασε το πρόγραμμα.
Title: Re: Προβλήμα σε τρέξιμο προγράμματος Post by: SolidSNK on March 29, 2010, 20:07:05 pm Κάπου βγαίνει εκτός μνήμης. Λογικά φταίει η αλλαγή του compiler.. Μπορεί να φταίει ο compiler, διαφορετικές βιβλιοθήκες, who knows. Ένα seg fault μπορεί να προκύψει από πολλά πράγματα, οπότε προσπάθησε να κάνεις debug όπως είπε ο Axel. Εναλλακτικά, μας δίνεις τα sources και το makefile για να προσπαθήσουμε και 'μεις! :)Title: Re: Προβλήμα σε τρέξιμο προγράμματος Post by: tolos on March 31, 2010, 10:57:56 am Κατάφερα να το κάνω να τρέξει χειροκίνητα. Όμως όταν παώ να το τρέξω από ένα script με την ίδια εντολή μου βγάζει σφάλμα. Πως γίνεται αυτό;
Σημείωση: το σφάλμα που μου έβγαζε αρχικά στο χειροκίνητο τρέξιμο το παρέκαμψα χωρίς να κάνω αλλαγές στον κώδικα. Ανεβάζω και το αρχείο του κώδικα (dldt) όπως επίσης και το Makefile |