Pagina 1 di 1

[#C] problema complilazione -std=c99

Inviato: lunedì 26 maggio 2014, 19:43
da MartinaLP
Salve a tutti.
Ho un problema: ho recentemente reinstallato Ubuntu e ogni volta che compilo da terminale un programma in C mi va in errore e dice di compilarlo in C99.
Prima però non me l'aveva mai detto quindi non so da cosa possa dipendere.
C'è un modo per impostare la compilazione direttamente in c99 senza doverlo specificare ogni volta?
grazie :)

Re: [#C] problema complilazione -std=c99

Inviato: lunedì 26 maggio 2014, 20:35
da ixamit
Ciao,
Si, basta eseguire c99 al posto di gcc. Non e' altro che uno script che aggiunge il parametro al compilatore.
Se compili da linea di comando:

Codice: Seleziona tutto

% c99 foo.c
Se vuoi forzare un Makefile la forma piu pulita e':

Codice: Seleziona tutto

% make [foo_target] CC=c99
Allego anche una copia dello script nel caso mancasse in qualche distro :

Codice: Seleziona tutto

#! /bin/sh

# Call the appropriate C compiler with options to accept ANSI/ISO C
# The following options are the same (as of gcc-3.3):
# 	-std=c99
# 	-std=c9x
# 	-std=iso9899:1999
# 	-std=iso9899:199x

extra_flag=-std=c99

for i; do
    case "$i" in
	-std=c9[9x]|-std=iso9899:199[9x])
	    extra_flag=
	    ;;
	-std=*|-ansi)
	    echo >&2 "`basename $0` called with non ISO C99 option $i"
	    exit 1
	    ;;
    esac
done

exec gcc $extra_flag ${1+"$@"}

Re: [#C] problema compilazione -std=c99

Inviato: mercoledì 28 maggio 2014, 20:19
da MartinaLP
Grazie mille :)