After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 732764 - The latest rhythmbox needs atleast libglib 2.34
The latest rhythmbox needs atleast libglib 2.34
Status: RESOLVED FIXED
Product: rhythmbox
Classification: Other
Component: general
HEAD
Other Linux
: Normal normal
: ---
Assigned To: RhythmBox Maintainers
RhythmBox Maintainers
Depends on:
Blocks:
 
 
Reported: 2014-07-05 12:19 UTC by gnome.vrb
Modified: 2014-07-06 07:01 UTC
See Also:
GNOME target: ---
GNOME version: ---



Description gnome.vrb 2014-07-05 12:19:11 UTC
The configure.ac file in rhythmbox root dir is as follows:

GTK_REQS=3.6.0
GLIB_REQS=2.32.0

PKG_CHECK_MODULES(RHYTHMBOX,                            \
                  glib-2.0 >= $GLIB_REQS                \
                  gio-2.0 >= $GLIB_REQS                 \
                  gio-unix-2.0 >= $GLIB_REQS            \
...
...
                  json-glib-1.0)

However, the latest rhythmbox doesn't compile on 'debian wheezy', even after a local install of GTK 3.6.0 ( which required a minimum of Glib 2.33.1 ). This is because, the function "g_mount_get_symbolic_icon" in file sources/rb-device-source.c as shown below:

361:		icon = g_mount_get_symbolic_icon (mount);
...
...
365:		icon = g_volume_get_symbolic_icon (volume);

is available only since version Glib 2.34, as stated in the following link:

https://developer.gnome.org/gio/2.33/GMount.html#g-mount-get-symbolic-icon

Hence, compilation fails due to declaration errors ( -Wall -Werror ).
Comment 1 gnome.vrb 2014-07-05 12:43:37 UTC
The exact error encountered during 'make' is as follows:

rb-device-source.c: In function 'rb_device_source_set_display_details':
rb-device-source.c:361:3: error: implicit declaration of function 'g_mount_get_symbolic_icon' [-Werror=implicit-function-declaration]
rb-device-source.c:361:3: error: nested extern declaration of 'g_mount_get_symbolic_icon' [-Werror=nested-externs]
rb-device-source.c:361:8: error: assignment makes pointer from integer without a cast [-Werror]
rb-device-source.c:365:3: error: implicit declaration of function 'g_volume_get_symbolic_icon' [-Werror=implicit-function-declaration]
rb-device-source.c:365:3: error: nested extern declaration of 'g_volume_get_symbolic_icon' [-Werror=nested-externs]
rb-device-source.c:365:8: error: assignment makes pointer from integer without a cast [-Werror]
cc1: all warnings being treated as errors
Comment 2 gnome.vrb 2014-07-05 13:14:52 UTC
vrishab@debian:~/Packages/source/gnome/glib$ ls -l
total 136824
drwxr-xr-x 13 vrishab vrishab     4096 Jul  4 02:55 glib-2.33.1
-rw-r--r--  1 vrishab vrishab 68700160 Jul  4 02:50 glib-2.33.1.tar
drwxr-xr-x 13 vrishab vrishab     4096 Jul  5 17:55 glib-2.34.0
-rw-r--r--  1 vrishab vrishab 71249920 Jul  5 17:52 glib-2.34.0.tara


vrishab@debian:~/Packages/source/gnome/glib$ grep "g_volume_get_symbolic_icon" -Rl .
./glib-2.34.0/gio/gio.symbols
./glib-2.34.0/gio/gvolume.h
./glib-2.34.0/gio/gvolume.c
./glib-2.34.0/docs/reference/gio/gio-sections.txt
./glib-2.34.0/docs/reference/gio/html/api-index-full.html
./glib-2.34.0/docs/reference/gio/html/api-index-2-34.html
./glib-2.34.0/docs/reference/gio/html/gio.devhelp2
./glib-2.34.0/docs/reference/gio/html/GVolume.html
./glib-2.34.0.tar


The above command shows that "g_volume_get_symbolic_icon" is found only in 2.34.x and not in 2.33.x ( or any version below that )
Comment 3 Jonathan Matthew 2014-07-06 01:10:58 UTC
fixed in commit c83d56e
Comment 4 gnome.vrb 2014-07-06 07:01:44 UTC
Thanks !!