Компилятор MinGW: невозможно запустить программу в командной строке
Я скачал MinGW компилятор. Я написал небольшую программу на c и скомпилировал ее следующим образом:
gcc -c firstc.c
Он сгенерировал исполняемый файл как "firstc.o" .
Но когда я попытался запустить программу в командной строке следующим образом:
firstc.o
В результате появилось окно с подсказкой
"Как вы хотите открыть этот файл?"
и со списком вариантов приложений, чтобы выбрать.
В чем может быть проблема здесь? Как я могу перенаправить вывод моей программы в самой командной строке?
Если в случае, если программа может быть заподозрена, в файле есть следующая программа:
#include <stdio.h>
struct gl
{
int n ;
char a[10];
} ;
int
main () {
struct gl* str_p ;
printf(" Meri marzi /n") ;
return 0 ;
}
1 ответ
Как мне скомпилировать и связать программу переменного тока, используя gcc?
Он сгенерировал исполняемый файл как "firstc.o"
firstc.o
объектный модуль, а не исполняемый файл Это должно быть связано (см. Позже).
Это потому что ты побежал
gcc -c firstc.c
А также -c
поручает компилятору:
Компилировать или собирать исходные файлы, но не ссылаться. Этап связывания просто не завершен. Конечный результат в форме объектного файла для каждого исходного файла.
Общие параметры источника - Использование коллекции компиляторов GNU (GCC)
Для ссылки на отдельном шаге:
gcc -o firstc firstc.o -lm
Чтобы скомпилировать и связать в один шаг:
gcc -Wall firstc.c -o firstc
Чтобы запустить вашу программу:
./firstc
Наконец, пожалуйста, прочитайте следующие инструкции о том, как использовать gcc: