ΕΕΛ/ΛΑΚ - Λίστες Ταχυδρομείου

Gcc 4.6 (Ubuntu)

Hello all ;-)

Πρόσφατα πήγα να κάνω compile σε ένα ubuntu oneiric και διαπίστωσα τα εξής..

α) Ο gcc παίρνει τα CFLAGS μόνο στο τέλος της εντολής και όχι στην
αρχή (κουλό !),  ποιο συγκεκριμένα αν τα βάλω στην αρχή της εντολής
πχ.
gcc $CFLAGS -c foo.c -o bar.o
δεν κάνει ποτέ link (το bar.o είναι linked μόνο με τη libc και όλα τα
symols προς άλλες βιβλιοθήκες είναι unresolved), ενώ το
gcc -c foo.c -o bar.o $CFLAGS
δουλεύει κανονικά !

β) Για κάποιο λόγο τρώω ένα άκυρο segfault που το βλέπω μόνο εκεί (και
δεν έχει κανένα νόημα, είναι ένα τυπικό assignment από αποτέλεσμα
συνάρτησης, του στυλ mitsos = takis()), ούτε warnings του compiler
ούτε τίποτα + το δοκίμασα σε gentoo 32 και 64bit και δουλεύει
κανονικότατα (gcc 4.4.x και 4.5.2).

γ) Έφαγα και ένα άλλο segfault λιγότερο άκυρο αλλά που πάλι δε βγάζει
νόημα, μέσα στη glibc όταν κάνω regexp checks από συγκεκριμένο code
path (η ίδια συνάρτηση δουλεύει κανονικά απ' όπου και να τη καλέσω και
με ότι όρισμα και να της βάλω -κάνει checks internaly- αλλά όταν τη
καλώ από συγκεκριμένο path χτυπάει στη malloc_consolidate (το διόρθωσα
φτιάχνοντας ένα λάθος malloc που έκανα παραπάνω -αλλά νομιμότατο
malloc, ήταν λάθος code-wise-). Θα γράψω ένα proof-of-concept
προγραμματάκι να σας δείξω τι εννοώ.

Έχετε δει κάτι αντίστοιχο στο Ubuntu ?

-- 
GPG ID: 0xD21DB2DB
As you read this post global entropy rises. Have Fun ;-)
Nick

απαντήσεις

πλοήγηση μηνυμάτων