I am sure we will encounter an issue or two. Theoretically though, we
should only have to create such a system like this once. Then we will only
have to occasionally add update the dependencies now and then. I think if
we are going to do dynamic, we should fork our own mxe on github. We can
create a sed script to replace --disable-shared --enable-shared and
--enable-static to --disable-static on all the src/*.mk.

Jeremiah
On Feb 17, 2013 4:02 AM, "Richard Shann" <richard.sh...@virgin.net> wrote:

> I have had a look at evince and its backend loading code. To build
> libevince as a dll we would have to build two dozen other libraries as
> in the list below, which is generated when you try to build evince as a
> shared object.
> For the alternative - to make a statically linked evince library with
> pdf backend - we would have to hack the evince code itself: we would
> need to re-organize ev-backends-manager.c ev-document.c
> ev-document-factory.c ev-module.c and ev-poppler.cc so that the
> EvDocumentClass structure was filled with pointers to the ev-poppler.c
> routines directly (linking that code in directly).
>
> I just checked, and it was building evince that caused the worst
> problems with gub too - it was looking for mingw libraries in the host
> library directory.
>
> I am not sure which way to go: we could try to use the mxe makefile
> system to build everything as shared objects. Mxe seems much simpler
> than gub, being just a makefile (the xxxx.mk files are just included in
> Makefile as I understand it, so it is just one Makefile). But I wonder
> if that would in turn give rise to problems. I recall that we have ended
> up with libfluidsynth.dll so that library at least we built using mxe as
> a shared object, is it possible that we could build all the others that
> way without getting further mired down? We don't really care whether it
> is built statically or not, as we are going to have more than one file
> in the end (we have to have the g_spawn_helper executables and the fonts
> as separate files). If mxe will happily build the set of .dlls reported
> below perhaps we could then build evince as a dll too and get Denemo
> working...
>
> Richard
> from the log of building evince without --disable-shared:
>
> 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><8><
> *** Warning: This system can not link to static lib
> archive /home/rshann/mxe/usr/i686-pc-mingw32/lib/libgtk-win32-2.0.la.
> *** I have the capability to make that library automatically link in
> when
> *** you link to this library.  But I can only do this if you have a
> *** shared version of the library, which you do not appear to have.
>
> *** Warning: This system can not link to static lib
> archive /home/rshann/mxe/usr/i686-pc-mingw32/lib/libgdk-win32-2.0.la.
> *** I have the capability to make that library automatically link in
> when
> *** you link to this library.  But I can only do this if you have a
> *** shared version of the library, which you do not appear to have.
>
> *** Warning: This system can not link to static lib
> archive /home/rshann/mxe/usr/i686-pc-mingw32/lib/libatk-1.0.la.
> *** I have the capability to make that library automatically link in
> when
> *** you link to this library.  But I can only do this if you have a
> *** shared version of the library, which you do not appear to have.
>
> *** Warning: This system can not link to static lib
> archive /home/rshann/mxe/usr/i686-pc-mingw32/lib/libpangocairo-1.0.la.
> *** I have the capability to make that library automatically link in
> when
> *** you link to this library.  But I can only do this if you have a
> *** shared version of the library, which you do not appear to have.
>
> *** Warning: This system can not link to static lib
> archive /home/rshann/mxe/usr/i686-pc-mingw32/lib/libgdk_pixbuf-2.0.la.
> *** I have the capability to make that library automatically link in
> when
> *** you link to this library.  But I can only do this if you have a
> *** shared version of the library, which you do not appear to have.
>
> *** Warning: This system can not link to static lib
> archive /home/rshann/mxe/usr/i686-pc-mingw32/lib/libpangoft2-1.0.la.
> *** I have the capability to make that library automatically link in
> when
> *** you link to this library.  But I can only do this if you have a
> *** shared version of the library, which you do not appear to have.
>
> *** Warning: This system can not link to static lib
> archive /home/rshann/mxe/usr/i686-pc-mingw32/lib/libpangowin32-1.0.la.
> *** I have the capability to make that library automatically link in
> when
> *** you link to this library.  But I can only do this if you have a
> *** shared version of the library, which you do not appear to have.
>
> *** Warning: This system can not link to static lib
> archive /home/rshann/mxe/usr/i686-pc-mingw32/lib/libpango-1.0.la.
> *** I have the capability to make that library automatically link in
> when
> *** you link to this library.  But I can only do this if you have a
> *** shared version of the library, which you do not appear to have.
>
> *** Warning: This system can not link to static lib
> archive /home/rshann/mxe/usr/i686-pc-mingw32/lib/libcairo.la.
> *** I have the capability to make that library automatically link in
> when
> *** you link to this library.  But I can only do this if you have a
> *** shared version of the library, which you do not appear to have.
>
> *** Warning: This system can not link to static lib
> archive /home/rshann/mxe/usr/i686-pc-mingw32/lib/libpixman-1.la.
> *** I have the capability to make that library automatically link in
> when
> *** you link to this library.  But I can only do this if you have a
> *** shared version of the library, which you do not appear to have.
>
> *** Warning: This system can not link to static lib
> archive /home/rshann/mxe/usr/i686-pc-mingw32/lib/libfontconfig.la.
> *** I have the capability to make that library automatically link in
> when
> *** you link to this library.  But I can only do this if you have a
> *** shared version of the library, which you do not appear to have.
>
> *** Warning: This system can not link to static lib
> archive /home/rshann/mxe/usr/i686-pc-mingw32/lib/libexpat.la.
> *** I have the capability to make that library automatically link in
> when
> *** you link to this library.  But I can only do this if you have a
> *** shared version of the library, which you do not appear to have.
>
> *** Warning: This system can not link to static lib
> archive /home/rshann/mxe/usr/i686-pc-mingw32/lib/libfreetype.la.
> *** I have the capability to make that library automatically link in
> when
> *** you link to this library.  But I can only do this if you have a
> *** shared version of the library, which you do not appear to have.
>
> *** Warning: This system can not link to static lib
> archive /home/rshann/mxe/usr/i686-pc-mingw32/lib/libtiff.la.
> *** I have the capability to make that library automatically link in
> when
> *** you link to this library.  But I can only do this if you have a
> *** shared version of the library, which you do not appear to have.
>
> *** Warning: This system can not link to static lib
> archive /home/rshann/mxe/usr/i686-pc-mingw32/lib/liblzma.la.
> *** I have the capability to make that library automatically link in
> when
> *** you link to this library.  But I can only do this if you have a
> *** shared version of the library, which you do not appear to have.
>
> *** Warning: This system can not link to static lib
> archive /home/rshann/mxe/usr/i686-pc-mingw32/lib/libjpeg.la.
> *** I have the capability to make that library automatically link in
> when
> *** you link to this library.  But I can only do this if you have a
> *** shared version of the library, which you do not appear to have.
>
> *** Warning: This system can not link to static lib
> archive /home/rshann/mxe/usr/i686-pc-mingw32/lib/libpng15.la.
> *** I have the capability to make that library automatically link in
> when
> *** you link to this library.  But I can only do this if you have a
> *** shared version of the library, which you do not appear to have.
>
> *** Warning: This system can not link to static lib
> archive /home/rshann/mxe/usr/i686-pc-mingw32/lib/libgio-2.0.la.
> *** I have the capability to make that library automatically link in
> when
> *** you link to this library.  But I can only do this if you have a
> *** shared version of the library, which you do not appear to have.
>
> *** Warning: This system can not link to static lib
> archive /home/rshann/mxe/usr/i686-pc-mingw32/lib/libgobject-2.0.la.
> *** I have the capability to make that library automatically link in
> when
> *** you link to this library.  But I can only do this if you have a
> *** shared version of the library, which you do not appear to have.
>
> *** Warning: This system can not link to static lib
> archive /home/rshann/mxe/usr/i686-pc-mingw32/lib/libgmodule-2.0.la.
> *** I have the capability to make that library automatically link in
> when
> *** you link to this library.  But I can only do this if you have a
> *** shared version of the library, which you do not appear to have.
>
> *** Warning: This system can not link to static lib
> archive /home/rshann/mxe/usr/i686-pc-mingw32/lib/libgthread-2.0.la.
> *** I have the capability to make that library automatically link in
> when
> *** you link to this library.  But I can only do this if you have a
> *** shared version of the library, which you do not appear to have.
>
> *** Warning: This system can not link to static lib
> archive /home/rshann/mxe/usr/i686-pc-mingw32/lib/libglib-2.0.la.
> *** I have the capability to make that library automatically link in
> when
> *** you link to this library.  But I can only do this if you have a
> *** shared version of the library, which you do not appear to have.
>
> *** Warning: This system can not link to static lib
> archive /home/rshann/mxe/usr/i686-pc-mingw32/lib/libpcre.la.
> *** I have the capability to make that library automatically link in
> when
> *** you link to this library.  But I can only do this if you have a
> *** shared version of the library, which you do not appear to have.
>
> *** Warning: This system can not link to static lib
> archive /home/rshann/mxe/usr/i686-pc-mingw32/lib/libintl.la.
> *** I have the capability to make that library automatically link in
> when
> *** you link to this library.  But I can only do this if you have a
> *** shared version of the library, which you do not appear to have.
>
> *** Warning: This system can not link to static lib
> archive /home/rshann/mxe/usr/i686-pc-mingw32/lib/libiconv.la.
> *** I have the capability to make that library automatically link in
> when
> *** you link to this library.  But I can only do this if you have a
> *** shared version of the library, which you do not appear to have.
>
> *** Warning: linker path does not have real file for library -luuid.
> *** I have the capability to make that library automatically link in
> when
> *** you link to this library.  But I can only do this if you have a
> *** shared version of the library, which you do not appear to have
> *** because I did check the linker path looking for a file starting
> *** with libuuid and none of the candidates passed a file format test
> *** using a file magic. Last file
> checked:
> /home/rshann/mxe/usr/lib/gcc/i686-pc-mingw32/4.7.0/../../../../i686-pc-mingw32/lib//libuuid.a
>
> *** Warning: linker path does not have real file for library -lbz2.
> *** I have the capability to make that library automatically link in
> when
> *** you link to this library.  But I can only do this if you have a
> *** shared version of the library, which you do not appear to have
> *** because I did check the linker path looking for a file starting
> *** with libbz2 and none of the candidates passed a file format test
> *** using a file magic. Last file
> checked:
> /home/rshann/mxe/usr/lib/gcc/i686-pc-mingw32/4.7.0/../../../../i686-pc-mingw32/lib//libbz2.a
>
> *** Warning: linker path does not have real file for library -lz.
> *** I have the capability to make that library automatically link in
> when
> *** you link to this library.  But I can only do this if you have a
> *** shared version of the library, which you do not appear to have
> *** because I did check the linker path looking for a file starting
> *** with libz and none of the candidates passed a file format test
> *** using a file magic. Last file
> checked:
> /home/rshann/mxe/usr/lib/gcc/i686-pc-mingw32/4.7.0/../../../../i686-pc-mingw32/lib//libz.a
> *** The inter-library dependencies that have been dropped here will be
> *** automatically added whenever a program is linked with this library
> *** or is declared to -dlopen it.
>
>
> 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><8><8><8><8><8><8><8><
>
>
_______________________________________________
Denemo-devel mailing list
Denemo-devel@gnu.org
https://lists.gnu.org/mailman/listinfo/denemo-devel

Reply via email to