c++ - virtual noexcept(true) errors: MinGW and gtkmm -


i've been fighting month solid build //working// c++/gtkmm-3.0 application on windows mingw. managed libraries, mingw, , codeblocks along on windows xp (virtualbox). however, when try build, following errors.

these recent versions of gtkmm-3.0 , dependencies. got them via msys2, though cannot build in environment reasons yet unknown. so, oft recommended, copied them on mingw /lib , /include directories, , ensured pkg-config find them. all's there (allegedly).

these problems not originating code, obviously. didn't write or modify gtkmm. yet, can't these go away.

it worth mentioning last getting errors relating "cannot find glib::ustring::ustring", , decided stop whining , give me these out of blue instead. if earlier messages ever show again, i'll post them here.

i'm beginning think isn't worth releasing software on windows @ all.

note: getting on 50 of these, in gtkmm-3.0 , dependency libraries, originating line 1 or 2 of main, , exact same details. i'll show few in interest of space.

-------------- build: debug in infiltrator (compiler: gnu gcc compiler)---------------  mingw32-g++.exe -std=c++11 -wall -mms-bitfields -pthread -ic:/dev/mingw/include/glibmm-2.4 -ic:/dev/mingw/lib/glibmm-2.4/include -ic:/dev/mingw/include/sigc++-2.0 -ic:/dev/mingw/lib/sigc++-2.0/include -ic:/dev/mingw/include/glib-2.0 -ic:/dev/mingw/lib/glib-2.0/include -ic:/dev/mingw/include/gtkmm-3.0 -ic:/dev/mingw/lib/gtkmm-3.0/include -ic:/dev/mingw/include/atkmm-1.6 -ic:/dev/mingw/include/giomm-2.4 -ic:/dev/mingw/lib/giomm-2.4/include -ic:/dev/mingw/include/pangomm-1.4 -ic:/dev/mingw/lib/pangomm-1.4/include -ic:/dev/mingw/include/gtk-3.0 -ic:/dev/mingw/include/cairomm-1.0 -ic:/dev/mingw/lib/cairomm-1.0/include -ic:/dev/mingw/include/gdk-pixbuf-2.0 -ic:/dev/mingw/include/gdkmm-3.0 -ic:/dev/mingw/lib/gdkmm-3.0/include -ic:/dev/mingw/include/atk-1.0 -ic:/dev/mingw/include/pango-1.0 -ic:/dev/mingw/include/cairo -ic:/dev/mingw/include/pixman-1 -ic:/dev/mingw/include -i/mingw32/include/freetype2 -i/mingw32/include/libpng16 -i/mingw32/include/harfbuzz -i/mingw32/include/glib-2.0 -i/mingw32/lib/glib-2.0/include -i/mingw32/include -ic:/dev/mingw/include/freetype2 -ic:/dev/mingw/include/libpng16 -ic:/dev/mingw/include/harfbuzz -wl,-luuid -lc:/dev/mingw/lib -lgtkmm-3.0 -latkmm-1.6 -lgdkmm-3.0 -lgiomm-2.4 -lpangomm-1.4 -lgtk-3 -lglibmm-2.4 -lcairomm-1.0 -lgdk-3 -lgdi32 -limm32 -lshell32 -lole32 -lwinmm -lz -latk-1.0 -lgio-2.0 -lpangowin32-1.0 -lpangocairo-1.0 -lgdk_pixbuf-2.0 -lcairo-gobject -lpango-1.0 -lcairo -lsigc-2.0 -lgobject-2.0 -lglib-2.0 -lintl -std=c++11 -wall -g -mms-bitfields -pthread -ic:/dev/mingw/include/glibmm-2.4 -ic:/dev/mingw/lib/glibmm-2.4/include -ic:/dev/mingw/include/sigc++-2.0 -ic:/dev/mingw/lib/sigc++-2.0/include -ic:/dev/mingw/include/glib-2.0 -ic:/dev/mingw/lib/glib-2.0/include -ic:/dev/mingw/include/gtkmm-3.0 -ic:/dev/mingw/lib/gtkmm-3.0/include -ic:/dev/mingw/include/atkmm-1.6 -ic:/dev/mingw/include/giomm-2.4 -ic:/dev/mingw/lib/giomm-2.4/include -ic:/dev/mingw/include/pangomm-1.4 -ic:/dev/mingw/lib/pangomm-1.4/include -ic:/dev/mingw/include/gtk-3.0 -ic:/dev/mingw/include/cairomm-1.0 -ic:/dev/mingw/lib/cairomm-1.0/include -ic:/dev/mingw/include/gdk-pixbuf-2.0 -ic:/dev/mingw/include/gdkmm-3.0 -ic:/dev/mingw/lib/gdkmm-3.0/include -ic:/dev/mingw/include/atk-1.0 -ic:/dev/mingw/include/pango-1.0 -ic:/dev/mingw/include/cairo -ic:/dev/mingw/include/pixman-1 -ic:/dev/mingw/include -i/mingw32/include/freetype2 -i/mingw32/include/libpng16 -i/mingw32/include/harfbuzz -i/mingw32/include/glib-2.0 -i/mingw32/lib/glib-2.0/include -i/mingw32/include -ic:/dev/mingw/include/freetype2 -ic:/dev/mingw/include/libpng16 -ic:/dev/mingw/include/harfbuzz -wl,-luuid -lc:/dev/mingw/lib -lgtkmm-3.0 -latkmm-1.6 -lgdkmm-3.0 -lgiomm-2.4 -lpangomm-1.4 -lgtk-3 -lglibmm-2.4 -lcairomm-1.0 -lgdk-3 -lgdi32 -limm32 -lshell32 -lole32 -lwinmm -lz -latk-1.0 -lgio-2.0 -lpangowin32-1.0 -lpangocairo-1.0 -lgdk_pixbuf-2.0 -lcairo-gobject -lpango-1.0 -lcairo -lsigc-2.0 -lgobject-2.0 -lglib-2.0 -lintl -std=c++11 -mms-bitfields -pthread -ic:/dev/mingw/include/glibmm-2.4 -ic:/dev/mingw/lib/glibmm-2.4/include -ic:/dev/mingw/include/sigc++-2.0 -ic:/dev/mingw/lib/sigc++-2.0/include -ic:/dev/mingw/include/glib-2.0 -ic:/dev/mingw/lib/glib-2.0/include -ic:/dev/mingw/include/gtkmm-3.0 -ic:/dev/mingw/lib/gtkmm-3.0/include -ic:/dev/mingw/include/atkmm-1.6 -ic:/dev/mingw/include/giomm-2.4 -ic:/dev/mingw/lib/giomm-2.4/include -ic:/dev/mingw/include/pangomm-1.4 -ic:/dev/mingw/lib/pangomm-1.4/include -ic:/dev/mingw/include/gtk-3.0 -ic:/dev/mingw/include/cairomm-1.0 -ic:/dev/mingw/lib/cairomm-1.0/include -ic:/dev/mingw/include/gdk-pixbuf-2.0 -ic:/dev/mingw/include/gdkmm-3.0 -ic:/dev/mingw/lib/gdkmm-3.0/include -ic:/dev/mingw/include/atk-1.0 -ic:/dev/mingw/include/pango-1.0 -ic:/dev/mingw/include/cairo -ic:/dev/mingw/include/pixman-1 -ic:/dev/mingw/include -i/mingw32/include/freetype2 -i/mingw32/include/libpng16 -i/mingw32/include/harfbuzz -i/mingw32/include/glib-2.0 -i/mingw32/lib/glib-2.0/include -i/mingw32/include -ic:/dev/mingw/include/freetype2 -ic:/dev/mingw/include/libpng16 -ic:/dev/mingw/include/harfbuzz -iinclude -ic:\dev\mingw\include -c "c:\documents , settings\jason\desktop\infiltrator\main.cpp" -o obj\debug\main.o in file included c:/dev/mingw/include/pangomm-1.4/pangomm/fontset.h:33:0,                  c:/dev/mingw/include/pangomm-1.4/pangomm/context.h:37,                  c:/dev/mingw/include/gtkmm-3.0/gtkmm/widget.h:32,                  c:/dev/mingw/include/gtkmm-3.0/gtkmm/actiongroup.h:29,                  c:/dev/mingw/include/gtkmm-3.0/gtkmm/application.h:32,                  c:\documents , settings\jason\desktop\infiltrator\main.cpp:2: c:/dev/mingw/include/pangomm-1.4/pangomm/font.h:98:11: error: looser throw specifier 'virtual pango::font::~font()' in file included c:/dev/mingw/include/glibmm-2.4/glibmm/binding.h:23:0,                  c:/dev/mingw/include/glibmm-2.4/glibmm.h:96,                  c:\documents , settings\jason\desktop\infiltrator\main.cpp:1: c:/dev/mingw/include/glibmm-2.4/glibmm/object.h:117:11: error:   overriding 'virtual glib::object::~object() noexcept (true)' in file included c:/dev/mingw/include/pangomm-1.4/pangomm/context.h:37:0,                  c:/dev/mingw/include/gtkmm-3.0/gtkmm/widget.h:32,                  c:/dev/mingw/include/gtkmm-3.0/gtkmm/actiongroup.h:29,                  c:/dev/mingw/include/gtkmm-3.0/gtkmm/application.h:32,                  c:\documents , settings\jason\desktop\infiltrator\main.cpp:2: c:/dev/mingw/include/pangomm-1.4/pangomm/fontset.h:81:11: error: looser throw specifier 'virtual pango::fontset::~fontset()' in file included c:/dev/mingw/include/glibmm-2.4/glibmm/binding.h:23:0,                  c:/dev/mingw/include/glibmm-2.4/glibmm.h:96,                  c:\documents , settings\jason\desktop\infiltrator\main.cpp:1: c:/dev/mingw/include/glibmm-2.4/glibmm/object.h:117:11: error:   overriding 'virtual glib::object::~object() noexcept (true)' in file included c:/dev/mingw/include/pangomm-1.4/pangomm/fontfamily.h:34:0,                  c:/dev/mingw/include/pangomm-1.4/pangomm/fontmap.h:36,                  c:/dev/mingw/include/pangomm-1.4/pangomm/context.h:38,                  c:/dev/mingw/include/gtkmm-3.0/gtkmm/widget.h:32,                  c:/dev/mingw/include/gtkmm-3.0/gtkmm/actiongroup.h:29,                  c:/dev/mingw/include/gtkmm-3.0/gtkmm/application.h:32,                  c:\documents , settings\jason\desktop\infiltrator\main.cpp:2: c:/dev/mingw/include/pangomm-1.4/pangomm/fontface.h:81:11: error: looser throw specifier 'virtual pango::fontface::~fontface()' in file included c:/dev/mingw/include/gtkmm-3.0/gtkmm/widget.h:41:0,                  c:/dev/mingw/include/gtkmm-3.0/gtkmm/actiongroup.h:29,                  c:/dev/mingw/include/gtkmm-3.0/gtkmm/application.h:32,                  c:\documents , settings\jason\desktop\infiltrator\main.cpp:2: c:/dev/mingw/include/gtkmm-3.0/gtkmm/buildable.h:107:11: error: looser throw specifier 'virtual gtk::buildable::~buildable()' process terminated status 1 (0 minute(s), 6 second(s)) 50 error(s), 0 warning(s) (0 minute(s), 6 second(s)) 

this type of error message seems pop other stable, working projects , library being built on windows, aside gtkmm.

my best guess forgot compiler flag, setting, or other bright-blazingly obvious step in build process. hasten remind reader on codeblocks (13.14), didn't write build command myself.


requested info mingw32-g++.exe --version

mingw32-g++.exe (tdm-1) 4.7.1

this version came bundled codeblocks 13.14.

...

i hasten remind i didn't write aspect of gtkmm or dependencies, of these errors originating. also, stable version, not beta or development snapshot. second, this exact same code working exact same versions of library on linux build.

that said, here complete lines of code requested locations.

c:/dev/mingw/include/glibmm-2.4/glibmm/object.h, line 117

virtual ~object() noexcept; //it should deleted callback.

c:/dev/mingw/include/pangomm-1.4/pangomm/font.h, line 98

virtual ~font();

your g++ version old code: 4.7.x had half-baked way reconciliation of explicit , implied exception specifications between inherited member functions, in case between virtual destructor of glib::object , of pango::font.

you need upgrade @ least gcc 4.8.1 - happens latest stable version mingw. can up-to-date windows port of gcc tdm. latest there 5.1

p.s. little suspicious whether have builds of glibmm-2.4 , pangomm-1.4 in sync. have sources of these packages both official per linux distro (ubuntu 15.04), , line numbers of specimen problem declarations enquired different yours , neither of them has noexcept specification avoids snag.


Comments

Popular posts from this blog

html - Outlook 2010 Anchor (url/address/link) -

javascript - Why does running this loop 9 times take 100x longer than running it 8 times? -

Getting gateway time-out Rails app with Nginx + Puma running on Digital Ocean -