brummer10 / guitarix

guitarix virtual versatile amplification for Jack/Linux
235 stars 24 forks source link

Build error: error: 'class Glib::RefPtr<Glib::Object>' has no member named 'get' #33

Closed GvMariani closed 2 years ago

GvMariani commented 3 years ago

After working around issue #32, I stumbled upon on another roadblock: the build now fails with this error message


In file included from ../src/headers/guitarix.h:83:0, from ../src/gx_head/gui/gx_sequencer_settings.cpp:20: ../src/headers/gx_ui_builder.h: In member function 'void gx_gui::GxBuilder::find_object(const Glib::ustring&, T_Object&)': ../src/headers/gx_ui_builder.h:118:52: error: 'class Glib::RefPtr' has no member named 'get' object = dynamic_cast<T_Object>(get_object(name).get());


See the full log of a failed build: BuildFailedGlibmm.txt

This one could be originated by an outdated glib/gtk/glibmm/gtkmm library on my system; I have installed: boost 1.61 gtkmm2.4 2.24.0 gtkmm3.0 3.22. glibmm2.4 2.50.0 glib2.0 2.58.3 gtk+3 3.22.4 gtk+2 2.24.30

If one or more are outdated, then waf should test and warn about this, but I got no such warning...

hfiguiere commented 3 years ago

It is labelled as: "Since glibmm 2.56"

GvMariani commented 3 years ago

It is labelled as: "Since glibmm 2.56" OK. I was already guessing that an outdated library could be the culprit and evidently I did not read accurately the docs...

But in that case the bug (and my point) is that your wscript should ask for glibmm >= 2.56, not 2.38: conf.check_cfg(package='glibmm-2.4', atleast_version='2.38', args='--cflags --libs', uselib_store='GLIBMM', mandatory=1) Instead it happily let me proceed until the inevitable error...