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 629498 - can't build with --disable-dbus
can't build with --disable-dbus
Status: RESOLVED FIXED
Product: evince
Classification: Core
Component: general
git master
Other Linux
: Normal normal
: ---
Assigned To: Evince Maintainers
Evince Maintainers
Depends on:
Blocks:
 
 
Reported: 2010-09-13 10:37 UTC by Didier Roche
Modified: 2010-09-13 11:44 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
Small patch, not sure if the calling function should be called with --disable-dbus, so can be wrong. (952 bytes, patch)
2010-09-13 11:11 UTC, Didier Roche
committed Details | Review

Description Didier Roche 2010-09-13 10:37:17 UTC
from https://bugs.edge.launchpad.net/ubuntu/+source/evince/+bug/636971

In ubuntu and debian, we build evince and an evince-gtk package

The second package is built with --disable-dbus, which, with 2.31.92, gives us that error:

------
/bin/bash ../libtool --tag=CC --mode=link gcc -g -O2 -fPIE -fstack-protector -D_FORTIFY_SOURCE=2 -Wformat -Wformat-security -g -Wall -O2 -Wl,-Bsymbolic-functions -fPIE -pie -Wl,-z,relro -Wl,-z,now -o evince eggfindbar.o ev-annotation-properties-dialog.o ev-application.o ev-file-monitor.o ev-history.o ev-keyring.o ev-marshal.o ev-message-area.o ev-metadata.o ev-navigation-action.o ev-navigation-action-widget.o ev-password-view.o ev-progress-message-area.o ev-properties-dialog.o ev-properties-fonts.o ev-properties-license.o ev-open-recent-action.o ev-utils.o ev-window.o ev-window-title.o ev-sidebar.o ev-sidebar-annotations.o ev-sidebar-attachments.o ev-sidebar-layers.o ev-sidebar-links.o ev-sidebar-page.o ev-sidebar-thumbnails.o main.o ../cut-n-paste/zoom-control/libephyzoom.la ../cut-n-paste/toolbar-editor/libtoolbareditor.la ../cut-n-paste/totem-screensaver/libtotemscrsaver.la ../cut-n-paste/gimpcellrenderertoggle/libgimpcellrenderertoggle.la ../cut-n-paste/smclient/libsmclient.la ../properties/libevproperties.la ../libdocument/libevdocument.la ../libview/libevview.la ../libmisc/libevmisc.la -pthread -lxml2 -lX11 -llaunchpad-integration -lgtk-x11-2.0 -lgdk-x11-2.0 -latk-1.0 -lgio-2.0 -lpangoft2-1.0 -lpangocairo-1.0 -lgdk_pixbuf-2.0 -lm -lcairo -lpango-1.0 -lfreetype -lfontconfig -lgobject-2.0 -lgmodule-2.0 -lgthread-2.0 -lrt -lglib-2.0 -lz -lm
libtool: link: gcc -g -O2 -fPIE -fstack-protector -D_FORTIFY_SOURCE=2 -Wformat -Wformat-security -g -Wall -O2 -Wl,-Bsymbolic-functions -fPIE -pie -Wl,-z -Wl,relro -Wl,-z -Wl,now -o .libs/evince eggfindbar.o ev-annotation-properties-dialog.o ev-application.o ev-file-monitor.o ev-history.o ev-keyring.o ev-marshal.o ev-message-area.o ev-metadata.o ev-navigation-action.o ev-navigation-action-widget.o ev-password-view.o ev-progress-message-area.o ev-properties-dialog.o ev-properties-fonts.o ev-properties-license.o ev-open-recent-action.o ev-utils.o ev-window.o ev-window-title.o ev-sidebar.o ev-sidebar-annotations.o ev-sidebar-attachments.o ev-sidebar-layers.o ev-sidebar-links.o ev-sidebar-page.o ev-sidebar-thumbnails.o main.o -pthread ../cut-n-paste/zoom-control/.libs/libephyzoom.a ../cut-n-paste/toolbar-editor/.libs/libtoolbareditor.a ../cut-n-paste/totem-screensaver/.libs/libtotemscrsaver.a ../cut-n-paste/gimpcellrenderertoggle/.libs/libgimpcellrenderertoggle.a ../cut-n-paste/smclient/.libs/libsmclient.a -lSM ../properties/.libs/libevproperties.a ../libdocument/.libs/libevdocument.so ../libview/.libs/libevview.so ../libmisc/.libs/libevmisc.a /tmp/buildd/evince-2.31.92/debian/build/evince-gtk/libview/.libs/libevview.so /tmp/buildd/evince-2.31.92/debian/build/evince-gtk/libdocument/.libs/libevdocument.so /usr/lib/libgailutil.so /usr/lib/libxml2.so -lX11 -llaunchpad-integration /usr/lib/libgtk-x11-2.0.so /usr/lib/libgdk-x11-2.0.so /usr/lib/libatk-1.0.so /usr/lib/libgio-2.0.so /usr/lib/libpangoft2-1.0.so /usr/lib/libpangocairo-1.0.so -lgdk_pixbuf-2.0 /usr/lib/libcairo.so /usr/lib/libpango-1.0.so /usr/lib/libfreetype.so -lfontconfig /usr/lib/libgobject-2.0.so /usr/lib/libgmodule-2.0.so /usr/lib/libgthread-2.0.so -lrt /usr/lib/libglib-2.0.so -lz -lm -pthread
ev-window.o: In function `ev_window_load_job_cb':
/tmp/buildd/evince-2.31.92/./shell/ev-window.c:1550: undefined reference to `ev_window_emit_doc_loaded'
collect2: ld returned 1 exit status
make[4]: *** [evince] Error 1
make[4]: Leaving directory `/tmp/buildd/evince-2.31.92/debian/build/evince-gtk/shell'
make[3]: *** [all] Error 2
make[3]: Leaving directory `/tmp/buildd/evince-2.31.92/debian/build/evince-gtk/shell'
make[2]: *** [all-recursive] Error 1
make[2]: Leaving directory `/tmp/buildd/evince-2.31.92/debian/build/evince-gtk'
make[1]: *** [all] Error 2
make[1]: Leaving directory `/tmp/buildd/evince-2.31.92/debian/build/evince-gtk'
make: *** [build/evince-gtk] Error 2
dpkg-buildpackage: error: debian/rules build gave error exit status 2

----------------

The issue is that ev_window_emit_doc_loaded is defined with
#ifdef ENABLE_DBUS
static void ev_window_emit_closed (EvWindow *window);
static void ev_window_emit_doc_loaded (EvWindow *window);
#endif

and the calling function (ev_window_load_job_cb) isn't conditioned to ENABLE_DBUS, creating the missing reference

this was added to commit http://git.gnome.org/browse/evince/commit/?id=a3e68aa381fd1566049a50b26b59ce8e8612f9f7
Comment 1 Didier Roche 2010-09-13 11:11:06 UTC
Created attachment 170133 [details] [review]
Small patch, not sure if the calling function should be called with --disable-dbus, so can be wrong.
Comment 2 Carlos Garcia Campos 2010-09-13 11:44:36 UTC
Review of attachment 170133 [details] [review]:

Patch is good, thanks! I've just appplied to master and gnome-2-32.