Конфликтующие объявления в заголовках gtkmm

Я начинаю думать, что мне нужно все утилизировать и переделать с нуля.
Я вручную добавляю библиотеки из GTK и gtkmm в настройках компилятора codeblocks, когда я наконец вижу что-то еще, кроме отсутствующего заголовка, я получаю это.

    ||=== test, Debug ===|
/usr/include/gdkmm-3.0/gdkmm/applaunchcontext.h|32|error: conflicting declaration ‘typedef struct _GdkAppLaunchContext GdkAppLaunchContext’|
/usr/include/gtk-2.0/gdk/gdkapplaunchcontext.h|42|error: ‘GdkAppLaunchContext’ has a previous declaration as ‘typedef struct GdkAppLaunchContext GdkAppLaunchContext’|
/usr/include/gdkmm-3.0/gdkmm/applaunchcontext.h|33|error: conflicting declaration ‘typedef struct _GdkAppLaunchContextClass GdkAppLaunchContextClass’|
/usr/include/gtk-2.0/gdk/gdkapplaunchcontext.h|43|error: ‘GdkAppLaunchContextClass’ has a previous declaration as ‘typedef struct GdkAppLaunchContextClass GdkAppLaunchContextClass’|
/usr/include/gdkmm-3.0/gdkmm/rgba.h|251|error: return type ‘Gdk::RGBATraits::CType {aka struct _GdkRGBA}’ is incomplete|
/usr/include/gdkmm-3.0/gdkmm/rgba.h|252|error: return type ‘Gdk::RGBATraits::CType {aka struct _GdkRGBA}’ is incomplete|
/usr/include/gtkmm-3.0/gtkmm/widget.h|3890|error: ‘GdkEventTouch’ was not declared in this scope|
/usr/include/gtkmm-3.0/gtkmm/widget.h|3890|error: template argument 2 is invalid|
||=== Build finished: 8 errors, 0 warnings ===|

какие-нибудь идеи о том, как я могу решить это?
Кроме того, какие-либо советы о том, как добавить эти библиотеки в стандартный путь для библиотек? делать это вручную для каждого проекта будет огромной болью.

1

Решение

Я решил это. вместо добавления каталогов заголовков под каталогами поиска компилятора.
Я добавил следующую строку:

    `pkg-config --libs --cflags gtkmm-3.0`

к другим опциям под компилятором и компоновщиком в кодовых блоках. это решило все конфликты и позволило мне наконец запустить мою тестовую программу.

3

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]