INTRODUZIONE ALLA PROGRAMMAZIONE IN C



Opzioni di compilazione



-c Sopprime i link con ld(1) e produce un file .o per ogni file sorgente. Ogni singolo file oggetto puo' essere nominato esplicitamente utilizzando l'opzione -o. -C Evita che il preprocessore C rimuova i commenti. -E Esegue il file sorgente solamente attraverso il preprocessore C. Invia l'output allo standard output, oppure ad un file a cui viene dato un nome con l'opzione -o. Include le informazioni di cpp sulla numerazione delle linee (vedere anche l'opzione -P). -g Produce una tavola informativa dei simboli supplementari per dbx(1) e dbxtool(1). Quando viene data questa opzione, le opzioni -O e -R sono soppresse. -help Visualizza informazioni di aiuto relative al compilatore. -Ipathname Aggiunge "pathname" alla lista di directory in cui cercare i file #include con il relativo filename (che non inizi con slash "/"). Il preprocessore cerca i file #include principalmente nella directory contenente il file sorgente, poi nelle directory specificate con l'opzione -I (se ce ne sono) e, alla fine, in /usr/include. -llibrary Linka con la libreria oggetto "library" (for ld(1)). Questa opzione deve seguire l'argomento del nome del file sorgente. -Ldirectory Aggiunge "directory" alla lista di directory che contengono routine di librerie oggetto (per il link usando ld(1)). -M Esegue solamente il preprocessore delle macro sui programmi C elencati, richiedendo che questo generi le dipendenze con il makefile ed invii il risultato sullo standard output (vedere make(1) per dettagli su makefile e sulle regole di dipendenza. -o outputfile Viene nominato l'output come "outputfile"; quest'ultimo deve avere l'appropriato suffisso per il tipo di file che viene prodotto dalla compilazione (vedere FILES, piu' avanti). "outputfile" non puo' essere lo stesso del file sorgente (il compilatore non sovrascrivera' il file sorgente). -O[level] Ottimizza il codice oggetto. Viene ignorato nel caso in cui siano usate le opzioni -g o -a. "-O" omettendo il livello, e' equivalente a "-O2". "level" puo' assumere uno dei seguenti valori: 1 Esegue solamente un'ottimizzazione sul punto critico del livello assembly. 2 Esegue un'ottimizzazione globale prioritaria sulla generazione del codice, che include l'ottimizzazione dei loop, l'eliminazione delle sottoespressioni comuni, la propagazione delle copie, e l'allocazione automatica nei registri. "-O2" non ottimizza i riferimenti o le definizioni delle variabili esterne o indirette. Se l'ottimizzatore in fase di esecuzione va in "out of memory", questo tenta di eseguire un ripristino riportando la procedura corrente ad un livello piu' basso di ottimizzazione e riprendendo le procedure successive al livello originale. -P Esegue il file sorgente solo attraverso il preprocessore C. Mette l'output in un file con un suffisso ".i". Non include nell'output le informazioni cpp-type sulla numerazione delle linee.