gtk4 and gtkmm-4.0



There are two parallel-installable series of libsigc++, cairomm, glibmm, pangomm, atkmm and gtkmm, one stable, the other extremely unstable. This situation has been going on for a couple of years. It has now and then resulted in Bugzilla bugs and GitLab issues from people who have tried to use packages from the unstable series, and been totally confused. No wonder, the situation is confusing.

The stable series:
pkg-config mod-name   Latest released version  Git branch
sigc++-2.0            2.10.2                   libsigc++-2-10
cairomm-1.0           1.13.1                   cairomm-1-14
glibmm-2.4            2.62.0                   glibmm-2-62
pangomm-1.4           2.42.0                   pangomm-2-42
atkmm-1.6             2.28.0                   atkmm-2-28
gtkmm-3.0             3.24.2                   gtkmm-3-24

Packages from these series are compatible with gtk+-3.0. Apart from cairomm-1.0, they have even minor version numbers.

The unstable series, which has caused so much confusion, is (sometimes) compatible with gtk4, which is still very unstable. Both ABI and API are constantly changing. Classes and functions can be deleted or modified.

The unstable series:
pkg-config mod-name   Latest released version  Git branch Tarball compatibility
sigc++-3.0            3.0.2 (stable)           master
cairomm-1.16          1.15.5                   master
glibmm-2.60           2.59.1                   master
glibmm-2.62           2.61.1                   master
glibmm-2.64           2.63.1                   master
pangomm-2.44          2.43.1                   master    glibmm 2.59.1
atkmm-2.30            2.29.1                   master    glibmm 2.59.1
gtkmm-4.0             3.95.1                   master    glibmm 2.61.1, gtk4 3.96.0

The NEWS files of the unstable releases contain the sentence: Distro packagers should probably not package this yet. The only reason I can see to use these unstable versions now is if you want to prepare for using gtk4 and gtkmm-4.0. And then you're better off if you build from the tips of the master branches in the git repo. It's difficult or impossible to find tarballs of all these packages that can be used together with each other and with a gtk4 tarball.

What makes these unstable versions so confusing is probably that cairomm, glibmm, pangomm and atkmm break ABI without increasing the major version number. That's because the underlying C packages, cairo, glib, pango and atk, do not break ABI.

Kjell Ahlstedt



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]