Я люблю консоли, особенно с курсивом для комментариев. Небольшие курсивные причудливые завитушки являются настолько милыми: P
Вы можете попробовать включить заголовки библиотек, используя -isystem
вместо -I
. Это сделает их "системными заголовками", и GCC не будет сообщать о них предупреждения.
Для этих предупреждений должна быть причина. Они будут вызваны либо ошибками в вашем коде, который использует библиотеку, либо ошибками в самом коде библиотеки. В первом случае исправьте свой код. Во втором случае либо прекратите использование библиотеки, либо, если это код FOSS, исправьте его.
#pragma
- инструкции для компилятора. вы можете установить что-то перед #include и отключить после.
Вы также можете сделать это в командной строке .
Другая страница GCC, посвященная отключению предупреждений .
Я бы выбрал вариант использования # pragma в исходном коде, а затем предоставил звук причина (в качестве комментария), почему вы отключаете предупреждения. Это означало бы рассуждение о файлах заголовков.
GCC подходит к этому, классифицируя типы предупреждений. Вы можете классифицировать их как предупреждения или игнорировать. Связанные ранее статьи покажут вам, какие предупреждения могут быть отключены.
Примечание: вы также можете изменить исходный код, чтобы предотвратить определенные предупреждения, используя атрибуты ; однако это очень сильно связывает вас с GCC.
Примечание 2: GCC также использует интерфейс pop / push , который используется в компиляторе Microsoft - Microsoft отключает предупреждения через этот интерфейс. Я предлагаю вам изучить это дополнительно, поскольку я не знаю, возможно ли это вообще.
Вы можете попробовать использовать предварительно скомпилированные заголовки . Предупреждения не исчезнут, но, по крайней мере, не появятся в вашем основном проекте.
Я нашел уловку. Если библиотека включает, вместо -Idir
используйте -isystem dir
в make-файле. Затем GCC обрабатывает повышение и т. Д., Поскольку система включает и игнорирует любые предупреждения от них.