|
From: Miroslav Š. <for...@fo...> - 2019-01-01 12:24:50
|
hi guys,
happy new year! :-)
yesterday i found some time to find out why svn gigedit does not compile
on my gentoo linux system anymore. i have found that it compiles fine
with gtkmm-3.22.2 but it fails with gtkmm-3.24.0. it begins with the
following errors and some more follow:
In file included from builtinpix.cpp:2:
../compat.h: In constructor ‘HBox::HBox()’:
../compat.h:140:41: error: ‘HORIZONTAL’ is not a member of
‘Gtk::Orientation’
HBox() : Gtk::Box(Gtk::Orientation::HORIZONTAL) {}
^~~~~~~~~~
../compat.h: In constructor ‘VBox::VBox()’:
../compat.h:145:41: error: ‘VERTICAL’ is not a member of
‘Gtk::Orientation’
VBox() : Gtk::Box(Gtk::Orientation::VERTICAL) {}
^~~~~~~~
../compat.h: In constructor ‘HButtonBox::HButtonBox()’:
../compat.h:150:53: error: ‘HORIZONTAL’ is not a member of
‘Gtk::Orientation’
HButtonBox() : Gtk::ButtonBox(Gtk::Orientation::HORIZONTAL) {}
^~~~~~~~~~
../compat.h: In constructor ‘HScale::HScale()’:
../compat.h:155:45: error: ‘HORIZONTAL’ is not a member of
‘Gtk::Orientation’
HScale() : Gtk::Scale(Gtk::Orientation::HORIZONTAL) {}
^~~~~~~~~~
../compat.h: In constructor ‘HScale::HScale(const
Glib::RefPtr<Gtk::Adjustment>&)’:
../compat.h:156:104: error: ‘HORIZONTAL’ is not a member of
‘Gtk::Orientation’
HScale(const Glib::RefPtr<Gtk::Adjustment>& adjustment) :
Gtk::Scale(adjustment, Gtk::Orientation::HORIZONTAL) {}
^~~~~~~~~~
i wanted to file a bug in the bugzilla but i don't have account and
cannot create one :-)
best regards.
miroslav
|
|
From: Christian S. <sch...@li...> - 2019-01-01 16:27:31
|
On Tuesday, 1. Januar 2019 13:24:31 CET Miroslav Šulc wrote: > hi guys, > > happy new year! :-) Hi and happy new year everyone! > yesterday i found some time to find out why svn gigedit does not compile > on my gentoo linux system anymore. i have found that it compiles fine > with gtkmm-3.22.2 but it fails with gtkmm-3.24.0. it begins with the > following errors and some more follow: Actually we put a lot of work so that gigedit compiles with a huge span of gtk versions, ranging from ancient gtk 2.x up to latest gtk 4.x development version. The problem with 2.24.x seems, which I just realized, that the Gtk team have changed their general release policy couple months ago. Originally the last official release of the gtk 3.x branch was announced to be 3.22.x, everything higher was supposed to be development versions for upcoming gtk 4: https://blog.gtk.org/2018/06/23/a-gtk-3-update/ So current gigedit code assumes 3.24.x to be already Gtk 4 API and different major Gtk API versions (unlike with Qt) are in general completely incompatible with each other. I currently don't have gtk 2.24.x installed here, but it should be relatively easy to fix. All the gtk version (in)compatiblity issues are handled in source file src/gigedit/compat.h. You find a bunch of gtk version checks there, reach out for ones that look like this: GTK_MAJOR_VERSION == 3 && GTKMM_MINOR_VERSION > 22 and change them accordingly to GTK_MAJOR_VERSION == 3 && GTKMM_MINOR_VERSION > 24 If you got it working there, do others a favour and send us your patch please! CU Christian |
|
From: Miroslav Š. <for...@fo...> - 2019-01-01 19:24:09
Attachments:
gigedit-9999-gtkmm-3.24.patch
|
hi again,
thanks for the clarification. i patched the file (patch attached) and
the original errors are gone, but now i get these:
mainwindow.cpp: In constructor ‘PropDialog::PropDialog()’:
mainwindow.cpp:2769:11: error: ‘class Table’ has no member named
‘set_margin’; did you mean ‘set_halign’?
table.set_margin(5);
^~~~~~~~~~
set_halign
mainwindow.cpp:2777:15: error: ‘HButtonBox’ {aka ‘class
Gtk::HButtonBox’} has no member named ‘set_margin’; did you mean
‘set_halign’?
buttonBox.set_margin(5);
^~~~~~~~~~
set_halign
mainwindow.cpp: In constructor ‘InstrumentProps::InstrumentProps()’:
mainwindow.cpp:2929:11: error: ‘class Table’ has no member named
‘set_margin’; did you mean ‘set_halign’?
table.set_margin(5);
^~~~~~~~~~
set_halign
mainwindow.cpp:2938:15: error: ‘HButtonBox’ {aka ‘class
Gtk::HButtonBox’} has no member named ‘set_margin’; did you mean
‘set_halign’?
buttonBox.set_margin(5);
^~~~~~~~~~
set_halign
mainwindow.cpp: In member function ‘void
MainWindow::select_instrument(gig::Instrument*)’:
mainwindow.cpp:3457:49: error: ‘Gtk::TreeNodeChildren::value_type’ {aka
‘class Gtk::TreeRow’} has no member named ‘get_iter’; did you mean
‘get_stamp’?
auto iterSel = model->children()[i].get_iter();
^~~~~~~~
get_stamp
mainwindow.cpp: In member function ‘bool
MainWindow::select_dimension_region(gig::DimensionRegion*)’:
mainwindow.cpp:3487:49: error: ‘Gtk::TreeNodeChildren::value_type’ {aka
‘class Gtk::TreeRow’} has no member named ‘get_iter’; did you mean
‘get_stamp’?
auto iterSel = model->children()[i].get_iter();
^~~~~~~~
get_stamp
mainwindow.cpp: In member function ‘void
MainWindow::select_sample(gig::Sample*)’:
mainwindow.cpp:3523:55: error: ‘Gtk::TreeNodeChildren::value_type’ {aka
‘class Gtk::TreeRow’} has no member named ‘get_iter’; did you mean
‘get_stamp’?
auto iterSel = rowGroup.children()[s].get_iter();
^~~~~~~~
get_stamp
what else i might do to make it compile? :-) i have no idea about the
cause as i know nothing about gtk :-)
miroslav
Dne 2019-01-01 16:47, Christian Schoenebeck napsal:
> On Tuesday, 1. Januar 2019 13:24:31 CET Miroslav Šulc wrote:
>> hi guys,
>>
>> happy new year! :-)
>
> Hi and happy new year everyone!
>
>> yesterday i found some time to find out why svn gigedit does not
>> compile
>> on my gentoo linux system anymore. i have found that it compiles fine
>> with gtkmm-3.22.2 but it fails with gtkmm-3.24.0. it begins with the
>> following errors and some more follow:
>
> Actually we put a lot of work so that gigedit compiles with a huge span
> of gtk
> versions, ranging from ancient gtk 2.x up to latest gtk 4.x development
> version.
>
> The problem with 2.24.x seems, which I just realized, that the Gtk team
> have
> changed their general release policy couple months ago. Originally the
> last
> official release of the gtk 3.x branch was announced to be 3.22.x,
> everything
> higher was supposed to be development versions for upcoming gtk 4:
>
> https://blog.gtk.org/2018/06/23/a-gtk-3-update/
>
> So current gigedit code assumes 3.24.x to be already Gtk 4 API and
> different
> major Gtk API versions (unlike with Qt) are in general completely
> incompatible
> with each other.
>
> I currently don't have gtk 2.24.x installed here, but it should be
> relatively
> easy to fix. All the gtk version (in)compatiblity issues are handled in
> source
> file src/gigedit/compat.h. You find a bunch of gtk version checks
> there, reach
> out for ones that look like this:
>
> GTK_MAJOR_VERSION == 3 && GTKMM_MINOR_VERSION > 22
>
> and change them accordingly to
>
> GTK_MAJOR_VERSION == 3 && GTKMM_MINOR_VERSION > 24
>
> If you got it working there, do others a favour and send us your patch
> please!
>
> CU
> Christian
>
>
> _______________________________________________
> Linuxsampler-devel mailing list
> Lin...@li...
> https://lists.sourceforge.net/lists/listinfo/linuxsampler-devel |
|
From: Christian S. <sch...@li...> - 2019-01-01 19:50:14
|
On Dienstag, 1. Januar 2019 20:23:52 CET Miroslav Šulc wrote: > thanks for the clarification. i patched the file (patch attached) and > the original errors are gone, but now i get these: > > mainwindow.cpp: In constructor ‘PropDialog::PropDialog()’: > mainwindow.cpp:2769:11: error: ‘class Table’ has no member named > ‘set_margin’; did you mean ‘set_halign’? > table.set_margin(5); > ^~~~~~~~~~ > set_halign If you look at the mentioned locations of those errors in the source files you will see there are the same GTK version checks as previously described. Adjusting them in the same way should do the trick. You are a Gentoo user, you can do that! :) CU Christian |
|
From: Miroslav Š. <for...@fo...> - 2019-01-02 12:55:14
|
hi again, thank you for guiding me :-) here's the patch that works for me: https://cgit.gentoo.org/dev/fordfrog.git/tree/media-sound/gigedit/files/gigedit-9999-gtkmm-3.24.patch regards. miroslav Dne 2019-01-01 20:50, Christian Schoenebeck napsal: > On Dienstag, 1. Januar 2019 20:23:52 CET Miroslav Šulc wrote: >> thanks for the clarification. i patched the file (patch attached) and >> the original errors are gone, but now i get these: >> >> mainwindow.cpp: In constructor ‘PropDialog::PropDialog()’: >> mainwindow.cpp:2769:11: error: ‘class Table’ has no member named >> ‘set_margin’; did you mean ‘set_halign’? >> table.set_margin(5); >> ^~~~~~~~~~ >> set_halign > > If you look at the mentioned locations of those errors in the source > files you > will see there are the same GTK version checks as previously described. > Adjusting them in the same way should do the trick. > > You are a Gentoo user, you can do that! :) > > CU > Christian > > > _______________________________________________ > Linuxsampler-devel mailing list > Lin...@li... > https://lists.sourceforge.net/lists/listinfo/linuxsampler-devel |
|
From: Christian S. <sch...@li...> - 2019-01-02 16:45:09
|
On Wednesday, 2. Januar 2019 13:55:00 CET Miroslav Šulc wrote: > thank you for guiding me :-) here's the patch that works for me: > https://cgit.gentoo.org/dev/fordfrog.git/tree/media-sound/gigedit/files/gige > dit-9999-gtkmm-3.24.patch Perfect! And it is now in SVN r3450 on our side. Thanks for your patch Miroslav! CU Christian |
|
From: Miroslav Š. <for...@fo...> - 2019-01-02 20:25:37
|
thanks for guiding me and for the work you do! :-) regards. miroslav Dne 2019-01-02 17:44, Christian Schoenebeck napsal: > On Wednesday, 2. Januar 2019 13:55:00 CET Miroslav Šulc wrote: >> thank you for guiding me :-) here's the patch that works for me: >> https://cgit.gentoo.org/dev/fordfrog.git/tree/media-sound/gigedit/files/gige >> dit-9999-gtkmm-3.24.patch > > Perfect! And it is now in SVN r3450 on our side. > > Thanks for your patch Miroslav! > > CU > Christian > > > _______________________________________________ > Linuxsampler-devel mailing list > Lin...@li... > https://lists.sourceforge.net/lists/listinfo/linuxsampler-devel |