Compilatore MinGW: impossibile eseguire il programma nel prompt dei comandi


0

Ho scaricato il compilatore MinGW. Ho scritto un piccolo programma c e lo ho compilato come segue:

gcc -c firstc.c

Ha generato un file eseguibile come "firstc.o".

Ma quando ho provato a eseguire il programma nel prompt dei comandi come segue:

firstc.o

Ha provocato una finestra di prompt affermando

"Come vuoi aprire questo file?"

e con un elenco di opzioni di app da scegliere.

Quale potrebbe essere il problema qui? Come posso reindirizzare l'output del mio programma nel prompt dei comandi stesso?

Se nel caso il programma può essere sospetto, il seguente è il programma nel file:

#include <stdio.h>

 struct gl
{ 

   int n ;
    char a[10];

} ;

 int 
main () {

     struct  gl* str_p ; 
    printf(" Meri marzi  /n") ;
     return 0 ;

}

Risposte:


1

Come faccio a compilare e collegare un programma c usando gcc?

Ha generato un file eseguibile come "firstc.o"

firstc.o è un modulo oggetto non un file eseguibile. Deve essere collegato (vedi più avanti).

Questo perché hai eseguito:

gcc -c firstc.c

E -c indica al compilatore di:

Compilare o assemblare i file sorgente, ma non collegare . La fase di collegamento semplicemente non viene eseguita. L'output finale è sotto forma di un file oggetto per ogni file sorgente.

fonte Opzioni generali - Uso della raccolta GNU Compiler (GCC)

Per collegare in un passaggio separato:

gcc -o firstc firstc.o -lm

Per compilare e collegare in un unico passaggio:

gcc -Wall firstc.c -o firstc

Per eseguire il tuo programma:

./firstc

Infine, leggi le seguenti istruzioni su come usare gcc:

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.