Hi Richard, When I build the 'official' Evince for Windows I always build it with shared libraries. I have no experience with building it statically.
I think it is like this: libevdocument is evince's library to handle documents. You can dynamically add plugins for handeling different document formats. So for pdf documents Evince uses a libpdfdocument plugin. I think these plugins are always shared libraries. When you statically compile libevdocument, it still looks for shared library plugins like libpdfdocument.dll. So I think you should not add '--disable-shared' to your configure. Regards, Hib Eris On Sat, Feb 16, 2013 at 4:11 PM, Richard Shann <richard.sh...@virgin.net> wrote: > Hi, > In the GNU/Denemo project we are trying to cross-compile libevince 2.32. > for windows. We are using mxe for this, and have a configure step > looking like this > ./configure \ > --host='$(TARGET)' \ > --disable-shared \ > --prefix='$(PREFIX)/$(TARGET)' \ > --without-libgnome \ > --without-gconf \ > --without-keyring \ > --with-platform=win32 \ > --with-smclient-backend=win32 \ > --disable-help \ > --disable-thumbnailer \ > --disable-nautilus \ > --disable-dbus \ > --disable-gtk-doc \ > --disable-previewer \ > --disable-nls \ > --without-gtk-unix-print \ > --disable-comics \ > CONFIG_SHELL=$(SHELL) > > We get a static library for evince but also another static library > lib/evince/3/backends/libpdfdocument.a and the .la file. > However, when the evince widget tries to load a pdf document it > complains that libpdfdocument.dll is not found in the backends > directory. > > Is there something wrong with our configure step? (I should mention we > also need two patches to enable the compilation, appended below). > > Richard Shann > > 8><8><8><8><8><8><8><8><8><8><8><8><8><8><8><8><8><8><8><8><8><8><8><8><8><8><8><8><--- > evince-2.32.0/shell/main.c 2010-07-27 11:47:54.000000000 -0400 > +++ evince-2.32.0.new/shell/main.c 2013-02-02 23:57:54.000000000 > -0500 > @@ -43,9 +43,6 @@ > #ifdef G_OS_WIN32 > #include <io.h> > #include <conio.h> > -#if !(_WIN32_WINNT >= 0x0500) > -#error "_WIN32_WINNT must be defined >= 0x0500" > -#endif > #include <windows.h> > #endif > > @@ -249,7 +246,7 @@ main (int argc, char *argv[]) > AttachConsole_t p_AttachConsole = > (AttachConsole_t) GetProcAddress (GetModuleHandle > ("kernel32.dll"), "AttachConsole"); > > - if (p_AttachConsole != NULL && p_AttachConsole > (ATTACH_PARENT_PROCESS)) > + if (p_AttachConsole != NULL && p_AttachConsole (-1)) > { > freopen ("CONOUT$", "w", stdout); > dup2 (fileno (stdout), 1); > 8><8><8><8><8><8><8><8><8><8><8><8><8><8><8><8><8><8><8><8><8><8><8><8><8><8><8><8><--- > evince-2.32.0/backend/pdf/ev-poppler.cc 2010-09-27 12:54:34.000000000 -0400 > +++ evince-2.32.0.new/backend/pdf/ev-poppler.cc 2013-02-02 > 23:40:15.000000000 -0500 > @@ -1934,9 +1934,7 @@ pdf_selection_get_selected_text (EvSelec > r.x2 = points->x2; > r.y2 = height - points->y1; > > - retval = poppler_page_get_text (poppler_page, > - (PopplerSelectionStyle)style, > - &r); > + retval = poppler_page_get_text (poppler_page); > #endif /* HAVE_POPPLER_PAGE_GET_SELECTED_TEXT */ > > return retval; > @@ -2054,9 +2052,7 @@ pdf_document_text_get_text (EvDocumentTe > r.y1 = 0; > poppler_page_get_size (poppler_page, &(r.x2), &(r.y2)); > > - return poppler_page_get_text (poppler_page, > - POPPLER_SELECTION_WORD, > - &r); > + return poppler_page_get_text (poppler_page); > } > #endif /* HAVE_POPPLER_PAGE_GET_SELECTED_TEXT */ > > 8><8><8><8><8><8><8><8><8><8><8><8><8><8><8><8><8><8><8><8><8><8><8><8><8><8><8><8>< > > > _______________________________________________ > evince-list mailing list > evince-list@gnome.org > https://mail.gnome.org/mailman/listinfo/evince-list _______________________________________________ evince-list mailing list evince-list@gnome.org https://mail.gnome.org/mailman/listinfo/evince-list