Имея дело с той же проблемой, описанной в этом вопросе (только с разными конкретными версиями), я добавил следующее в мой файл CMakeLists.txt верхнего уровня:
add_definitions(-D__GXX_ABI_VERSION=1002)
... поскольку 1002 - это версия, которую хочет моя сборка wxWidgets. Хорошо, отлично; Теперь скомпилированная программа будет запущена. Но теперь, когда я делаю make
, каждый скомпилированный файл выдает следующее предупреждение:
<command-line>: warning: "__GXX_ABI_VERSION" redefined
<built-in>: note: this is the location of the previous definition
Так что да, я знаю, что я [re] определил __GXX_ABI_VERSION
в командной строке, и я думаю, я знал, что это было определено ранее каким-то «встроенным» способом, но я сделал это специально. Есть ли что-то, что я могу добавить в свой файл CMakeLists.txt, чтобы подавить это конкретное предупреждение? Я не хочу подавлять любые другие предупреждения переопределения; только этот конкретный. Я взял перенаправление make
stderr
в файл и grep
, используя его для «error:», чтобы выбрать из ошибок стека предупреждений фактические ошибки компиляции, и это боль ...