Re: Re-ordering of libraries by libtool.

2013-02-24 Thread Richard Shann
Thank you for the thoughtful response.
On Sun, 2013-02-24 at 10:50 -0600, Bob Friesenhahn wrote:
 On Wed, 20 Feb 2013, Richard Shann wrote:
 
  In the GNU/Denemo project we are trying to cross-build a for windows on
  Debian stable using static libraries. The libtool step is re-ordering
  the libraries before invoking the linker, and so it fails.
  The cross-environment has version 2.22 of GNU/Binutils, but I am not
  clear where the actual libtool is coming from - the host libtool is
  version 2.26b.
 
 It is not wise to use such an archaic libtool.  You can determine 
 which version is actually used by doing './libtool --version' in the 
 build tree.
My problem was that the build is done with some environment set, without
hacking at it I cannot be sure what is being invoked (the tools are
being built for doing the compiling and linking as well as the final
executable)
 
  I can't find online documentation for this version, and even in the
  latest version there is almost no mention of libtool re-ordering the
  directories as given. I noticed one previous email on this topic, which
  received no responses. Can someone help?
 
 If any libraries have .la files, then this cause libtool to inject 
 library dependencies (additional needed libraries) into the build, 
 which may have the apparent effect of re-ordering.
But that is intended to be only an apparent effect - the later
appearance of the library on the link line would surely not be deleted?
This is what I appeared to encounter - no matter how many times I listed
the set of libraries on the $(CXXLD) line a symbol which nm says was
defined in a library was not found.
 
 Regardless, you should be using libtool 2.4.2.  Libtool 2.2.6b is a a 
 security-patched version of libtool 2.2.6a, which was released in 
 2008.
Yes Debian stable is always about 2 years behind; I guess that is why it
is called stable :) Trying to mix-and-match components is (for me) an
exercise in frustration.

Once again, thanks - at the moment we have returned to trying to build
using GNU/LilyPond's GUB system...

Richard Shann








___
https://lists.gnu.org/mailman/listinfo/libtool


Re-ordering of libraries by libtool.

2013-02-20 Thread Richard Shann
In the GNU/Denemo project we are trying to cross-build a for windows on
Debian stable using static libraries. The libtool step is re-ordering
the libraries before invoking the linker, and so it fails.
The cross-environment has version 2.22 of GNU/Binutils, but I am not
clear where the actual libtool is coming from - the host libtool is
version 2.26b.
I can't find online documentation for this version, and even in the
latest version there is almost no mention of libtool re-ordering the
directories as given. I noticed one previous email on this topic, which
received no responses. Can someone help?
Below is the libtool step as recorded in the log of the build (it is
being done using the mxe cross-compiling makefile system).
In the link the symbold register_evince_backend is defined in the
libpdfdocument.a which starts off after the libevdocument.a on the line
that /bin/bash gets, but is moved later when libtool executes the
linker. (Or so at least is my reading of this log).
Richard Shann
888
[...]
/bin/bash ../libtool --tag=CXX   --mode=link i686-pc-mingw32-g++  -g -O2
-o denemo.exe denemo_types.o commands.o calculatepositions.o
changenotehead.o chordops.o clefdialog.o commandfuncs.o contexts.o
draw.o drawaccidentals.o drawclefs.o drawcursor.o drawkey.o
drawdynamic.o drawnotes.o drawselection.o drawstemdir.o drawtimesig.o
drawtuplets.o drawlyric.o dynamic.o drawfigure.o exportabc.o
exportlilypond.o articulations.o exportxml.o file.o hairpin.o help.o
importxml.o importmusicxml.o importmidi.o kbd-custom.o kbd-interface.o
keyresponses.o keysigdialog.o figure.o main.o measureops.o
moveviewport.o mousing.o barline.o view.o http.o mwidthdialog.o objops.o
exportmidi.o instrumentname.o external.o source.o sourceaudio.o
scorelayout.o playback.o drawfakechord.o fakechord.o playbackprops.o
prefdialog.o prefops.o processstaffname.o lyric.o scoreops.o
scoreprops.o selectops.o staffops.o staffpropdialog.o drawbarline.o
slurs.o timedialog.o tomeasuredialog.o tupletops.o utils.o graceops.o
runsilent.o drawgrace.o print.o texteditors.o binreloc.o bookmarks.o
parseinstruments.o keyboard.o pitchentry.o pitchrecog.o drawlilydir.o
lilydirectives.o displayanimation.o midi.o audiocapture.o screenshot.o
\
/home/rshann/mxe/usr/i686-pc-mingw32/lib/libintl.a
-L/home/rshann/mxe/usr/i686-pc-mingw32/lib 
/home/rshann/mxe/usr/i686-pc-mingw32/lib/libiconv.a ../libsmf/libsmf.a 
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  -lportmidi  
-L/home/rshann/mxe/usr/i686-pc-mingw32/lib -lguile -lregex -lgmp -lws2_32 -lm 
-lltdl -lunistring -lintl -liconv   -L/home/rshann/mxe/usr/i686-pc-mingw32/lib 
-lxml2 -lz -liconv -lws2_32   -L/home/rshann/mxe/usr/i686-pc-mingw32/lib 
-lrsvg-2 -lgdk_pixbuf-2.0 -lgsf-1 -lpangocairo-1.0 -lcroco-0.6 -ltiff -llzma 
-ljpeg -lgio-2.0 -ldnsapi -lcairo -lmsimg32 -lpangoft2-1.0 -lpangowin32-1.0 
-lgdi32 -lpixman-1 -lpng15 -lfontconfig -lexpat -lfreetype -lbz2 -lpango-1.0 
-lm -lusp10 -lgobject-2.0 -lgmodule-2.0 -lgthread-2.0 -lglib-2.0 -lole32 
-lshlwapi -lpcre -lintl -lxml2 -lz -liconv -lws2_32   
-L/home/rshann/mxe/usr/i686-pc-mingw32/lib -lfontconfig -lexpat -lfreetype -lz 
-lbz2 -liconv   -L/home/rshann/mxe/usr/i686-pc-mingw32/lib -lgthread-2.0 
-lglib-2.0 -lws2_32 -lole32 -lshlwapi -lpcre -lintl -liconv   
-L/home/rshann/mxe/usr/i686-pc-mingw32/lib -lsndfile -lFLAC -lwsock32 
-lvorbisenc -lvorbis -lm -logg-L/home/rshann/mxe/usr/i686-pc-mingw32/lib 
-lgtk-win32-2.0 -lwinspool -lcomctl32 -lcomdlg32 -lgdk-win32-2.0 -limm32 
-lshell32 -luuid -latk-1.0 -lpangocairo-1.0 -lgio-2.0 -ldnsapi -lgdk_pixbuf-2.0 
-lpangoft2-1.0 -lpangowin32-1.0 -lpango-1.0 -lm -lusp10 -lcairo -lmsimg32 
-lgdi32 -lpixman-1 -lfontconfig -lexpat -lfreetype -lbz2 -ltiff -llzma -ljpeg 
-lpng15 -lz -lgobject-2.0 -lgmodule-2.0 -lgthread-2.0 -lglib-2.0 -lws2_32 
-lole32 -lshlwapi -lpcre -lintl -liconv   
-L/home/rshann/mxe/usr/i686-pc-mingw32/lib -lgtksourceview-2.0 -lxml2 
-lgtk-win32-2.0 -lwinspool -lcomctl32 -lcomdlg32 -lgdk-win32-2.0 -limm32 
-lshell32 -luuid -latk-1.0 -lpangocairo-1.0 -lgio-2.0 -ldnsapi -lgdk_pixbuf-2.0 
-lpangoft2-1.0 -lpangowin32-1.0 -lpango-1.0 -lm -lusp10 -lcairo -lmsimg32 
-lgdi32 -lpixman-1 -lfontconfig -lexpat -lfreetype -lbz2 -ltiff -llzma -ljpeg 
-lpng15 -lz -lgobject-2.0 -lgmodule-2.0 -lgthread-2.0 -lglib-2.0 -lws2_32 
-lole32 -lshlwapi -lpcre -lintl -liconv
-L/home/rshann/mxe/usr/i686-pc-mingw32/lib -levview -levdocument 
-lgtk-win32-2.0 -lwinspool -lcomctl32 -lcomdlg32 -lgdk-win32