GNOME Bugzilla – Bug 596137
GConf does not compile
Last modified: 2012-08-27 10:32:18 UTC
GConf-2.28.0 does not compile, it breaks at make[3]: Entering directory `/usr/local/src/GConf-2.28.0/defaults' gcc -DHAVE_CONFIG_H -I. -I.. -I.. -I.. -DSYSGCONFDIR=\"/opt/gnome2/etc/gconf\" -O2 -mtune=i686 -Wall -MT gconf-defaults.o -MD -MP -MF .deps/gconf-defaults.Tpo -c -o gconf-defaults.o gconf-defaults.c gconf-defaults.c:34:18: error: glib.h: No such file or directory gconf-defaults.c:35:25: error: glib-object.h: No such file or directory gconf-defaults.c:37:28: error: dbus/dbus-glib.h: No such file or directory gconf-defaults.c:38:37: error: dbus/dbus-glib-lowlevel.h: No such file or directory gconf-defaults.c:40:27: error: polkit/polkit.h: No such file or directory In file included from ../gconf/gconf-value.h:25, from ../gconf/gconf-schema.h:26, from ../gconf/gconf.h:27, from ../gconf/gconf-client.h:25, from gconf-defaults.c:43: Even after addition of $(DEPENDENT_WITH_GTK_CFLAGS) \ to INSTALL variable in defaults/Makefile.am and running autoreconf "polkit/polkit.h" is not found. PolicyKit is installed: pkg-config --cflags polkit -I/usr/include/PolicyKit By the way at the end ./configure prints: sysconfsubdir: gconf gtk+: yes ldap: yes policykit: no but polkit.h is hardcoded in gconf-defaults.c. Is it optional?
I have some more to add, Confirm this bug, I symlinked Polkit headers like so ln -s /usr/include/Polkit/polkit /usr/include/ Then I get this error, which I am yet to find solution to Here is output make all-recursive make[1]: Entering directory `/var/kitaman/build/GConf-2.28.0' Making all in gconf make[2]: Entering directory `/var/kitaman/build/GConf-2.28.0/gconf' make all-am make[3]: Entering directory `/var/kitaman/build/GConf-2.28.0/gconf' make[3]: Nothing to be done for `all-am'. make[3]: Leaving directory `/var/kitaman/build/GConf-2.28.0/gconf' make[2]: Leaving directory `/var/kitaman/build/GConf-2.28.0/gconf' Making all in backends make[2]: Entering directory `/var/kitaman/build/GConf-2.28.0/backends' make[2]: Nothing to be done for `all'. make[2]: Leaving directory `/var/kitaman/build/GConf-2.28.0/backends' Making all in po make[2]: Entering directory `/var/kitaman/build/GConf-2.28.0/po' make[2]: Nothing to be done for `all'. make[2]: Leaving directory `/var/kitaman/build/GConf-2.28.0/po' Making all in doc make[2]: Entering directory `/var/kitaman/build/GConf-2.28.0/doc' Making all in gconf make[3]: Entering directory `/var/kitaman/build/GConf-2.28.0/doc/gconf' make[3]: Nothing to be done for `all'. make[3]: Leaving directory `/var/kitaman/build/GConf-2.28.0/doc/gconf' make[3]: Entering directory `/var/kitaman/build/GConf-2.28.0/doc' make[3]: Nothing to be done for `all-am'. make[3]: Leaving directory `/var/kitaman/build/GConf-2.28.0/doc' make[2]: Leaving directory `/var/kitaman/build/GConf-2.28.0/doc' Making all in examples make[2]: Entering directory `/var/kitaman/build/GConf-2.28.0/examples' make[2]: Nothing to be done for `all'. make[2]: Leaving directory `/var/kitaman/build/GConf-2.28.0/examples' Making all in defaults make[2]: Entering directory `/var/kitaman/build/GConf-2.28.0/defaults' make all-am make[3]: Entering directory `/var/kitaman/build/GConf-2.28.0/defaults' gcc -DHAVE_CONFIG_H -I. -I.. -I.. -I.. -DSYSGCONFDIR=\"/etc/gconf\" -g -O2 -Wall -MT gconf-defaults.o -MD -MP -MF .deps/gconf-defaults.Tpo -c -o gconf-defaults.o gconf-defaults.c gconf-defaults.c:106: error: expected specifier-qualifier-list before ‘PolkitAuthority’ gconf-defaults.c: In function ‘gconf_defaults_finalize’: gconf-defaults.c:220: error: ‘GConfDefaultsPrivate’ has no member named ‘auth’ gconf-defaults.c: In function ‘register_mechanism’: gconf-defaults.c:231: error: ‘GConfDefaultsPrivate’ has no member named ‘auth’ gconf-defaults.c:231: warning: implicit declaration of function ‘polkit_authority_get’ gconf-defaults.c: In function ‘polkit_action_for_gconf_path’: gconf-defaults.c:286: error: ‘PolkitActionDescription’ undeclared (first use in this function) gconf-defaults.c:286: error: (Each undeclared identifier is reported only once gconf-defaults.c:286: error: for each function it appears in.) gconf-defaults.c:286: error: ‘action_description’ undeclared (first use in this function) gconf-defaults.c:295: warning: implicit declaration of function ‘polkit_action_description_get_annotation’ gconf-defaults.c:295: warning: assignment makes pointer from integer without a cast gconf-defaults.c:297: warning: implicit declaration of function ‘polkit_action_description_get_action_id’ gconf-defaults.c:297: warning: assignment makes pointer from integer without a cast gconf-defaults.c: At top level: gconf-defaults.c:352: error: expected specifier-qualifier-list before ‘GAsyncReadyCallback’ gconf-defaults.c: In function ‘check_auth_data_free’: gconf-defaults.c:364: error: ‘CheckAuthData’ has no member named ‘destroy’ gconf-defaults.c:365: error: ‘CheckAuthData’ has no member named ‘destroy’ gconf-defaults.c:365: error: ‘CheckAuthData’ has no member named ‘user_data’ gconf-defaults.c:366: error: ‘CheckAuthData’ has no member named ‘subject’ gconf-defaults.c: At top level: gconf-defaults.c:373: error: expected ‘)’ before ‘*’ token gconf-defaults.c: In function ‘check_next_action’: gconf-defaults.c:438: warning: implicit declaration of function ‘polkit_authority_check_authorization’ gconf-defaults.c:438: error: ‘GConfDefaultsPrivate’ has no member named ‘auth’ gconf-defaults.c:439: error: ‘CheckAuthData’ has no member named ‘subject’ gconf-defaults.c:444: error: ‘CheckAuthData’ has no member named ‘check_auth_callback’ gconf-defaults.c: In function ‘check_polkit_for_actions’: gconf-defaults.c:462: error: ‘POLKIT_CHECK_AUTHORIZATION_FLAGS_ALLOW_USER_INTERACTION’ undeclared (first use in this function) gconf-defaults.c:465: error: ‘CheckAuthData’ has no member named ‘check_auth_callback’ gconf-defaults.c:465: error: ‘GAsyncReadyCallback’ undeclared (first use in this function) gconf-defaults.c:465: error: expected ‘;’ before ‘check_authorization_callback’ gconf-defaults.c:466: error: ‘CheckAuthData’ has no member named ‘user_data’ gconf-defaults.c:467: error: ‘CheckAuthData’ has no member named ‘destroy’ gconf-defaults.c:468: error: ‘CheckAuthData’ has no member named ‘subject’ gconf-defaults.c:468: warning: implicit declaration of function ‘polkit_system_bus_name_new’ gconf-defaults.c:469: error: ‘CheckAuthData’ has no member named ‘challenge’ gconf-defaults.c: At top level: gconf-defaults.c:714: error: expected declaration specifiers or ‘...’ before ‘GAsyncResult’ gconf-defaults.c: In function ‘actions_ready_cb’: gconf-defaults.c:727: warning: implicit declaration of function ‘polkit_authority_enumerate_actions_finish’ gconf-defaults.c:727: error: ‘GConfDefaultsPrivate’ has no member named ‘auth’ gconf-defaults.c:727: error: ‘res’ undeclared (first use in this function) gconf-defaults.c:727: warning: assignment makes pointer from integer without a cast gconf-defaults.c: In function ‘do_copy’: gconf-defaults.c:816: warning: implicit declaration of function ‘polkit_authority_enumerate_actions’ gconf-defaults.c:816: error: ‘GConfDefaultsPrivate’ has no member named ‘auth’ gconf-defaults.c: In function ‘gconf_defaults_unset_mandatory’: gconf-defaults.c:1017: error: ‘GConfDefaultsPrivate’ has no member named ‘auth’ gconf-defaults.c: At top level: gconf-defaults.c:1024: error: expected ‘)’ before ‘*’ token gconf-defaults.c: In function ‘check_permissions_only’: gconf-defaults.c:1107: error: ‘CheckAuthData’ has no member named ‘check_auth_callback’ gconf-defaults.c:1107: error: ‘GAsyncReadyCallback’ undeclared (first use in this function) gconf-defaults.c:1107: error: expected ‘;’ before ‘check_authorization_only_callback’ gconf-defaults.c:1109: error: ‘CheckAuthData’ has no member named ‘user_data’ gconf-defaults.c:1110: error: ‘CheckAuthData’ has no member named ‘destroy’ gconf-defaults.c:1111: error: ‘CheckAuthData’ has no member named ‘subject’ gconf-defaults.c:1112: error: ‘CheckAuthData’ has no member named ‘challenge’ gconf-defaults.c: In function ‘do_check’: gconf-defaults.c:1145: error: ‘GConfDefaultsPrivate’ has no member named ‘auth’ make[3]: *** [gconf-defaults.o] Error 1 make[3]: Leaving directory `/var/kitaman/build/GConf-2.28.0/defaults' make[2]: *** [all] Error 2 make[2]: Leaving directory `/var/kitaman/build/GConf-2.28.0/defaults' make[1]: *** [all-recursive] Error 1 make[1]: Leaving directory `/var/kitaman/build/GConf-2.28.0' make: *** [all] Error 2
> Even after addition of > > $(DEPENDENT_WITH_GTK_CFLAGS) \ > > to INSTALL variable in defaults/Makefile.am Perhaps you mean INCLUDES instead of INSTALL? i.e.: diff --git a/defaults/Makefile.am b/defaults/Makefile.am index f1db711..18876b1 100644 --- a/defaults/Makefile.am +++ b/defaults/Makefile.am @@ -15,6 +15,7 @@ gconf_defaults_mechanism_SOURCES = \ INCLUDES = \ -I$(top_srcdir) \ -I$(top_builddir) \ + $(DEPENDENT_WITH_GTK_CFLAGS) \ -DSYSGCONFDIR=\"$(sysgconfdir)\" \ $(DEFAULTS_CFLAGS) This bug report describes two bugs, 'error: glib.h: No such file or directory' and the 'pokit.h' issue. The above patch fixes the first bug for me.
Hello, I suppose you have PolicyKit 0.9 or lower installed. GConf 2.28 needs newer version of this, named "polkit" instead of "PolicyKit". The other option is to explicitly disable polkit by issuing --disable-defaults-service to the GConf ./configure command. Hope this helps (it worked for me). Tom
Also see bug 599110.
*** This bug has been marked as a duplicate of bug 599110 ***