tjol / emperor

Orthodox file manager for GNOME — DEAD, recommended alternative: MeanEYE/sunflower
GNU General Public License v3.0
11 stars 0 forks source link

libnotify 0.5.0-2 error #1

Closed ghost closed 13 years ago

ghost commented 13 years ago

I try to build from emperor-0.1.tar.xz source. but I occur fellowing error:

toddw@toddw:~/20110912/emperor-0.1$ make Making all in po make[1]: Entering directory /home/toddw/20110912/emperor-0.1/po' make[1]: Leaving directory/home/toddw/20110912/emperor-0.1/po' Making all in src make[1]: Entering directory /home/toddw/20110912/emperor-0.1/src' Making all in config make[2]: Entering directory/home/toddw/20110912/emperor-0.1/src/config' echo >emperor_config.h "#define EMPEROR_CONFIG_PACKAGE_NAME \"emperor\"" echo >>emperor_config.h "#define EMPEROR_CONFIG_PACKAGE_VERSION \"0.1\"" echo >>emperor_config.h "#define EMPEROR_CONFIG_PACKAGE_VERSION_NAME \"Aurelian\"" echo >>emperor_config.h "#define EMPEROR_CONFIG_DATA_DIR \"/usr/share/emperor\"" echo >>emperor_config.h "#define EMPEROR_CONFIG_MODULE_DIR \"/usr/lib/emperor\"" make[2]: Leaving directory /home/toddw/20110912/emperor-0.1/src/config' Making all in application make[2]: Entering directory/home/toddw/20110912/emperor-0.1/src/application' gcc -DPACKAGE_NAME=\"emperor\" -DPACKAGE_TARNAME=\"emperor\" -DPACKAGE_VERSION=\"0.1\" -DPACKAGE_STRING=\"emperor\ 0.1\" -DPACKAGE_BUGREPORT=\"\" -DPACKAGE_URL=\"\" -DPACKAGE=\"emperor\" -DVERSION=\"0.1\" -DSTDC_HEADERS=1 -DHAVE_SYS_TYPES_H=1 -DHAVE_SYS_STAT_H=1 -DHAVE_STDLIB_H=1 -DHAVE_STRING_H=1 -DHAVE_MEMORY_H=1 -DHAVE_STRINGS_H=1 -DHAVE_INTTYPES_H=1 -DHAVE_STDINT_H=1 -DHAVE_UNISTD_H=1 -DHAVE_DLFCN_H=1 -DLT_OBJDIR=\".libs/\" -DENABLE_NLS=1 -DHAVE_GETTEXT=1 -DHAVE_DCGETTEXT=1 -I. -pthread -I/usr/include/gio-unix-2.0/ -I/usr/include/glib-2.0 -I/usr/lib/i386-linux-gnu/glib-2.0/include -pthread -DGSEAL_ENABLE -I/usr/include/atk-1.0 -I/usr/include/pango-1.0 -I/usr/include/gio-unix-2.0/ -I/usr/include/glib-2.0 -I/usr/lib/i386-linux-gnu/glib-2.0/include -I/usr/include/freetype2 -I/usr/include/libpng12 -I/usr/include/gtk-3.0 -I/usr/include/cairo -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/pixman-1 -pthread -I/usr/include/glib-2.0 -I/usr/lib/i386-linux-gnu/glib-2.0/include -I/usr/include/gee-0.8 -I/home/toddw/20110912/emperor-0.1/src/config -I/home/toddw/20110912/emperor-0.1/src/application -DGETTEXT_PACKAGE=\"emperor\" -pthread -I/usr/include/glib-2.0 -I/usr/lib/i386-linux-gnu/glib-2.0/include -I/usr/include/libxml2 -pthread -I/usr/include/glib-2.0 -I/usr/lib/i386-linux-gnu/glib-2.0/include -I/usr/include/dbus-1.0 -I/usr/lib/i386-linux-gnu/dbus-1.0/include -I/usr/include/atk-1.0 -I/usr/include/pango-1.0 -I/usr/include/gio-unix-2.0/ -I/usr/include/freetype2 -I/usr/include/libpng12 -I/usr/include/gtk-2.0 -I/usr/lib/gtk-2.0/include -I/usr/include/cairo -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/pixman-1 -g -O2 -MT emperor-emperor_core.o -MD -MP -MF .deps/emperor-emperor_core.Tpo -c -o emperor-emperor_core.o test -f 'emperor_core.c' || echo './'emperor_core.c emperor_core.c: In function ‘emperor_application_emperor_core_get_config_file_path’: emperor_core.c:470:18: warning: assignment from incompatible pointer type mv -f .deps/emperor-emperor_core.Tpo .deps/emperor-emperor_core.Po gcc -DPACKAGE_NAME=\"emperor\" -DPACKAGE_TARNAME=\"emperor\" -DPACKAGE_VERSION=\"0.1\" -DPACKAGE_STRING=\"emperor\ 0.1\" -DPACKAGE_BUGREPORT=\"\" -DPACKAGE_URL=\"\" -DPACKAGE=\"emperor\" -DVERSION=\"0.1\" -DSTDC_HEADERS=1 -DHAVE_SYS_TYPES_H=1 -DHAVE_SYS_STAT_H=1 -DHAVE_STDLIB_H=1 -DHAVE_STRING_H=1 -DHAVE_MEMORY_H=1 -DHAVE_STRINGS_H=1 -DHAVE_INTTYPES_H=1 -DHAVE_STDINT_H=1 -DHAVE_UNISTD_H=1 -DHAVE_DLFCN_H=1 -DLT_OBJDIR=\".libs/\" -DENABLE_NLS=1 -DHAVE_GETTEXT=1 -DHAVE_DCGETTEXT=1 -I. -pthread -I/usr/include/gio-unix-2.0/ -I/usr/include/glib-2.0 -I/usr/lib/i386-linux-gnu/glib-2.0/include -pthread -DGSEAL_ENABLE -I/usr/include/atk-1.0 -I/usr/include/pango-1.0 -I/usr/include/gio-unix-2.0/ -I/usr/include/glib-2.0 -I/usr/lib/i386-linux-gnu/glib-2.0/include -I/usr/include/freetype2 -I/usr/include/libpng12 -I/usr/include/gtk-3.0 -I/usr/include/cairo -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/pixman-1 -pthread -I/usr/include/glib-2.0 -I/usr/lib/i386-linux-gnu/glib-2.0/include -I/usr/include/gee-0.8 -I/home/toddw/20110912/emperor-0.1/src/config -I/home/toddw/20110912/emperor-0.1/src/application -DGETTEXT_PACKAGE=\"emperor\" -pthread -I/usr/include/glib-2.0 -I/usr/lib/i386-linux-gnu/glib-2.0/include -I/usr/include/libxml2 -pthread -I/usr/include/glib-2.0 -I/usr/lib/i386-linux-gnu/glib-2.0/include -I/usr/include/dbus-1.0 -I/usr/lib/i386-linux-gnu/dbus-1.0/include -I/usr/include/atk-1.0 -I/usr/include/pango-1.0 -I/usr/include/gio-unix-2.0/ -I/usr/include/freetype2 -I/usr/include/libpng12 -I/usr/include/gtk-2.0 -I/usr/lib/gtk-2.0/include -I/usr/include/cairo -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/pixman-1 -g -O2 -MT emperor-file_pane.o -MD -MP -MF .deps/emperor-file_pane.Tpo -c -o emperor-file_pane.o test -f 'file_pane.c' || echo './'file_pane.c file_pane.c: In function ‘emperor_application_file_pane_construct’: file_pane.c:1449:28: warning: assignment from incompatible pointer type file_pane.c:1454:28: warning: assignment from incompatible pointer type file_pane.c: In function ‘emperor_application_file_pane_procure_mount_co’: file_pane.c:2953:4: warning: ‘gee_map_contains’ is deprecated (declared at /usr/include/gee-0.8/gee.h:1297) file_pane.c: In function ‘emperor_application_file_pane_on_mouse_event’: file_pane.c:3856:6: warning: passing argument 5 of ‘g_timeout_addfull’ from incompatible pointer type /usr/include/glib-2.0/glib/gmain.h:504:10: note: expected ‘GDestroyNotify’ but argument is of type ‘void ()(struct Block5Data )’ file_pane.c: In function ‘emperor_application_file_pane_waiting_for_mount_show_notification’: file_pane.c:5460:2: error: too few arguments to function ‘notify_notification_new’ /usr/include/libnotify/notification.h:79:21: note: declared here file_pane.c:5464:2: warning: passing argument 4 of ‘notify_notification_addaction’ from incompatible pointer type /usr/include/libnotify/notification.h:148:21: note: expected ‘NotifyActionCallback’ but argument is of type ‘void ()(struct NotifyNotification _, const gchar , void )’ make[2]: _* [emperor-file_pane.o] Error 1 make[2]: Leaving directory /home/toddw/20110912/emperor-0.1/src/application' make[1]: *** [all-recursive] Error 1 make[1]: Leaving directory/home/toddw/20110912/emperor-0.1/src' make: *\ [all-recursive] Error 1

$ apt-get chngelog libnotify-dev libnotify (0.5.0-2ubuntu1) maverick; urgency=low

I use 10.10 maverick. It's related with this error? Thanks.

tjol commented 13 years ago

Interesting. The libnotify API appears to have changed in version 0.7. I'm not quite sure how to support both libnotify-0.5.x/0.6 and 0.7.x at the same time. As a quick fix, try this patch:

diff -ur emperor-0.1-orig/src/application/file_pane.c emperor-0.1/src/application/file_pane.c
--- emperor-0.1-orig/src/application/file_pane.c    2011-09-26 19:13:31.000000000 +0200
+++ emperor-0.1/src/application/file_pane.c 2011-09-26 19:15:28.000000000 +0200
@@ -5457,7 +5457,7 @@
    }
    _tmp2_ = _ ("Mounting");
    _tmp3_ = _ ("Please wait while the location is being mounted.");
-   _tmp4_ = notify_notification_new (_tmp2_, _tmp3_, "emperor-fm");
+   _tmp4_ = notify_notification_new (_tmp2_, _tmp3_, "emperor-fm", NULL);
    _g_object_unref0 (self->priv->m_notification);
    self->priv->m_notification = _tmp4_;
    _tmp5_ = _ ("Cancel");

You can apply the patch by running patch -p1 < patch_file.txt in the emperor-0.1 directory.

ghost commented 13 years ago

Thanks for quick response! Build is works.

toddw@toddw:~/20110912/emperor-0.1$ ./src/application/emperor

Gtk-ERROR **: GTK+ 2.x symbols detected. Using GTK+ 2.x and GTK+ 3 in the same process is not supported aborting... Aborted

I think that my machine's libnotify-dev depend on gtk2. So It's execute fail. Maybe It's good that upgrade my system. Anyway thanks for your help.

tjol commented 13 years ago

Version 0.1.1 allows compiling without a recent libnotify. That should solve your problem.