Мне нужно построить проект, состоящий из множества исходных и заголовочных файлов на языке Си. Проект компилируется в xcode с предупреждениями (что нормально), но когда я пытаюсь скомпилировать его с помощью компилятора GNU gcc C в Eclipse в Windows XP, я получаю много «переобъявлений» и «вложенных переопределений» ошибок. Все эти ошибки ссылаются на определения типов перечислителей в нескольких различных заголовочных файлах.
Каждый из этих файлов заголовков имеет соответствующие теги # ifndef / # define / # endif по всему файлу, но они вводят одинаковые перечислители (например, копируют / вставляют typedef в несколько заголовков), так что один файл заголовка #include нескольких других заголовочные файлы, каждый из которых имеет один и тот же перечислитель typedef с одинаковым именем.
Мне сказали, что это компилируется с предупреждениями в xcode, и мне не разрешено изменять существующий код.
Поскольку он компилируется с предупреждениями в xcode, я пытался найти способ заставить Eclipse игнорировать эти ошибки или изменить их на предупреждения для компиляции, но они не увенчались успехом. Не имеет значения, использует ли компилятор первое или последнее определение / объявление. Это идентичные переопределения / переопределения.
Есть ли способ сделать это?
Редактировать: компиляция с флагом ошибки -Wall