Как использовать #ifdef в подключенном файле вместе с флагом компиляции -dN?

Собственно вопрос выше. У меня есть файл main.c в котором подключен файл file1.c, где находятся #ifdef DEBUG. При использовании для компиляции такой строки: gcc main.c -dDEBUG -o main.exe выдаётся такой warning:
Warnings
cc1.exe: warning: unrecognized gcc debugging option: E
cc1.exe: warning: unrecognized gcc debugging option: B
cc1.exe: warning: unrecognized gcc debugging option: G
и ifdef не срабатывает. Если поменять DEBUG на D, ничего не меняется, кроме отсутствия варнингов.
Возможно ли это решить без изменения main.c или нужно передавать в функцию какой-то флаг для дебага в виде аргумента?
В интернете нашёл, что define работает только для текущего файла, но разве #include отрабатывает не раньше него? Про это интернет молчит.
  • Вопрос задан
  • 95 просмотров
Решения вопроса 1
@rufus20145 Автор вопроса
Проблема решилась изменением регистра -d на -D. Надо было читать оригинальную документацию.
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы