Назначьте CFLAGS для включения этих значений и заставьте Eclipse запустить инструмент, который по умолчанию использует эту переменную среды при компиляции (например, make).
Возможно, вам придется указать переменные среды перед запуском Eclipse (а затем они наследуются при запуске Eclipse make), но может быть способ указать среду по умолчанию в Eclipse.
(Я не использую Eclipse, поэтому мне нужно будет узнать об установке и тестировании этого; или, возможно, этот ответ может привести в замешательство чью-то память, если так, не стесняйтесь редактировать.)
Кроме того, вы можете захотеть -std = c99 вместо -ansi. Опция -ansi означает просто -std = c89 или -std = c ++ 98, в зависимости от того, компилируете ли вы C или C ++, и оба эти стандарта показывают их возраст.
Я установил Eclipse внутри виртуальной машины, работающей под Windows, чтобы проверить это, и, хотя CFLAGS находится в среде, Eclipse не использует его. Eclipse также делает вид (отображая текст, как «make all» и «make clean»), что он запускает make в нескольких ситуациях / проектах, которые я пробовал, когда он на самом деле не использует make (возможно, с использованием некоторого внутреннего движка). Этот ответ был на неправильном пути для Eclipse.