denemo-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Denemo-devel] The missing regex in mxe build


From: Richard Shann
Subject: Re: [Denemo-devel] The missing regex in mxe build
Date: Thu, 21 Feb 2013 09:49:13 +0000

On Wed, 2013-02-20 at 23:55 -0600, Jeremiah Benham wrote:
> 
> 
> I have compiled evince using your ev-module file. I am attaching the
> files. I hope it helps.

This builds ok for me. I guess you found the same problems trying to
link denemo against it though? I have got as invoking the link step
directly (skipping libtool) by using this rule in src/Makefile.in

denemo$(EXEEXT): $(denemo_OBJECTS) $(denemo_DEPENDENCIES) 
        rm -f denemo$(EXEEXT)
        mkdir .libs
        i686-pc-mingw32-g++ -g -O2 -o .libs/denemo$(EXEEXT) $(denemo_OBJECTS) \
                $(denemo_LDADD) $(LIBS) 

where denemo_LDADD is defined as

denemo_LDADD = $(INTLLIBS) $(SMF_LDD) libaudiobackend.a \
                ../libsffile/libsffile.a \
                
/home/rshann/mxe/usr/i686-pc-mingw32/lib/libguile-srfi-srfi-1-v-3.a \
                
/home/rshann/mxe/usr/i686-pc-mingw32/lib/libguile-srfi-srfi-60-v-2.a \
                /home/rshann/mxe/usr/i686-pc-mingw32/lib/libevview.a \
                /home/rshann/mxe/usr/i686-pc-mingw32/lib/libevdocument.a \
                
/home/rshann/mxe/usr/i686-pc-mingw32/lib/evince/3/backends/libpdfdocument.a \
                /home/rshann/mxe/usr/i686-pc-mingw32/lib/libpoppler.a \
                /home/rshann/mxe/usr/i686-pc-mingw32/lib/libpoppler-cpp.a  \
                /home/rshann/mxe/usr/i686-pc-mingw32/lib/libpoppler-glib.a

But this then gives a whole slew of undefined references - I even tracked down 
a couple of them
(adding -lgailutil -lfftw3f gets rid of some) - whether libtool would be
supplying these (based on information gathered when creating libpoppler)
or whether they would all need tracking down I don't know. But (as I
said in my earlier email, libtool seems to wantonly re-order the
libraries putting libdpfdocument.a before libevdocument.a which means
the register_evince_backend symbol is not resolved, and, in consequence,
the libpoppler stuff is not dragged in).

I have emailed the libtool mailing list as a last resort, but I am
disheartened by this experience.
I have started looking at the other route - building everything shared
using mxe's makefile system. 
What I did was create a new toplevel mxe directory and put in a symbolic
link to the standard mxe/pkg directory. This way I don't have to
download all the packages again. Then I sed'd the --disable-shared to
become --enable-shared in all the src/*.mk files and ran make denemo.
It stopped at building libsndfile, which was because flac has failed to
generate any .dlls. (The flac.mk has --enable-shared but it only
generated .a and .la as output). I don't see anything in the log of the
flac build to explain why it would do that...

Richard








reply via email to

[Prev in Thread] Current Thread [Next in Thread]