2012-12-02 20 views
15

Sto imparando il linguaggio C. Mi riferisco al libro di Dennis Ritchie & Kernighan. E quindi i programmi di reclamo Just ANSI. Ho installato il compilatore ANSI. Ho appena installato l'editor di testo 2 Sublime. Qualcuno potrebbe darmi un sistema di costruzione che farebbe quanto segue.sublime text 2 build system per linguaggio di programmazione C

1) Compilare il file sorgente

2) visualizzazione anomalia (in modo ben formattato) entro sublime sulla compilation senza successo.

3) In caso di compilazione riuscita, generare un file binario con lo stesso nome del nome file di origine all'interno della directory di lavoro.

4) Accettare Qualsiasi input utente all'interno di sublime per calcolare Output. (Dal momento che sono un principiante, per lo più scrivo programmi che richiedono all'utente di immettere. Ex: Programma per calcolare il numero di caratteri nel nome di input dell'utente.)

5) Selezione separata per Compilare & run.

Grazie in anticipo.

+1

ST2 non consente l'immissione da parte dell'utente, ovvero la quarta richiesta. – AGS

+0

grazie per la tua risposta. Problema risolto. :) – userzerox

risposta

34

Dal menù, scegliere Genera -> Nuovo sistema di accumulo ... e copia-incolla questo:

di Windows

Compile Only:

{ 
"cmd" : ["gcc", "$file_name", "-o", "${file_base_name}.exe", "-lm", "-Wall"], 
"selector" : "source.c", 
"shell":true, 
"working_dir" : "$file_path" 
} 

Compile & Corsa:

{ 
    "windows": 
    { 
     "cmd": ["cc","-std=c99" ,"$file_name","-o", "${file_base_name}.exe", "-lm", "-Wall", "&","start", "${file_base_name}.exe"] 
    }, 
    "selector" : "source.c", 
    "shell": true, 
    "working_dir" : "$file_path", 
} 

Linux

Compile Only:

{ 
"cmd" : ["gcc", "$file_name", "-o", "${file_base_name}", "-lm", "-Wall"], 
"selector" : "source.c", 
"shell":false, 
"working_dir" : "$file_path" 
} 

Compile & Run:

{ 
    "linux": 
    { 
     "cmd": ["cc","-std=c99" ,"$file_name","-o", "${file_base_name}", "-lm", "-Wall", ";", "./${file_base_name}"] 
    }, 
    "selector" : "source.c", 
    "shell": true, 
    "working_dir" : "$file_path", 
} 

e salvare questo con estensione * .sublime-build

ST è solo un editor, quindi non è possibile utilizzarlo come flusso di input, è necessario utilizzare una shell come bash, zsh, ... per farlo.

+1

c633: Sono molto grato a te. Funziona. Apprezzo davvero la tua risposta. :) – userzerox

+0

Non sarebbe già abbastanza senza istruire GCC a collegarsi con la libreria matematica '-lm'? – JSmyth

+0

C'è qualche modo _sublime_ per mantenere la shell aperta dopo exec. Su Windows? Voglio dire, evita solo di scrivere una riga in più in C, ma potrebbe essere utile per persone pigre come me ... O è possibile usare il buildlog come output? –

0

Vedere la barra di stato in basso in sublime testo 2 dove dice la lingua o dice 'testo normale', fare clic su di esso e cercare la lingua 'c'. per costruire hai solo bisogno di salvare Ctrl-s e Build Ctrl-B, facile come torta !. anche tu potresti provare un IDE amichevole come Eclipse. http://www.eclipse.org/

+0

Dr. Astragalo: Ho bisogno di un sistema di costruzione per i requisiti di cui sopra. Il sistema di build esistente non fornisce tutte le funzionalità sopra menzionate. Anche il sistema di generazione predefinito non funziona. C è selezionato e quando costruisco ottengo il messaggio "Il sistema non riesce a trovare il file specificato". Compiler installato Ubicazione: C: \ MingGW \ bin Il PERCORSO è specificato nelle variabili di ambiente in modo corretto. – userzerox