<html>
  <head>
    <meta content="text/html; charset=ISO-8859-1"
      http-equiv="Content-Type">
  </head>
  <body bgcolor="#FFFFFF" text="#3333FF">
    <div class="moz-cite-prefix">Hi Roumen<br>
      <br>
      Improbable as it may seem, I have, as of very recently, got the
      whole thing working under MinGW/MSys on Windows.  (Hey, it only
      took me about 3 months! <g>)  Once I have got clear of
      everything I urgently need to get done, I will document the entire
      process and my setup and post it somewhere (maybe tell me where). 
      My *heartfelt* thanks to you and others who have helped me out
      along the way.<br>
      <br>
      Pretty much the last thing I had to get past was the fact that
      "make install" on xmlsec kept failing (which is why I had to go
      looking for missing DLLs on my own), with:<br>
      <br>
      //===================<br>
      ...<br>
      make[5]: Entering directory
      `/projects/xmlsec1/xmlsec1-1.2.18/include/xmlsec'<br>
----------------------------------------------------------------------<br>
      <br>
      *** WARNING ***:<br>
      <br>
      You seem to have old xmlsec header files installed in:<br>
      <br>
        "/projects/xmlsec1/xmlsec1-1.2.18/include/xmlsec"<br>
      <br>
      The entire directory will be removed now.<br>
      To allow parallel installation of different xmlsec library
      versions,<br>
      the header files are now installed in a version specific
      subdirectory:<br>
      <br>
        "/projects/xmlsec1/xmlsec1-1.2.18/include/xmlsec1/xmlsec"<br>
      <br>
----------------------------------------------------------------------<br>
      <br>
      rm: cannot remove directory
      `/projects/xmlsec1/xmlsec1-1.2.18/include/xmlsec': Permission
      denied<br>
      make[5]: *** [remove-old-headers] Error 1<br>
      make[5]: Leaving directory
      `/projects/xmlsec1/xmlsec1-1.2.18/include/xmlsec'<br>
      make[4]: *** [install-exec-am] Error 2<br>
      make[4]: Leaving directory
      `/projects/xmlsec1/xmlsec1-1.2.18/include/xmlsec'<br>
      make[3]: *** [install-am] Error 2<br>
      make[3]: Leaving directory
      `/projects/xmlsec1/xmlsec1-1.2.18/include/xmlsec'<br>
      make[2]: *** [install-recursive] Error 1<br>
      make[2]: Leaving directory
      `/projects/xmlsec1/xmlsec1-1.2.18/include/xmlsec'<br>
      make[1]: *** [install-recursive] Error 1<br>
      make[1]: Leaving directory
      `/projects/xmlsec1/xmlsec1-1.2.18/include'<br>
      make: *** [install-recursive] Error 1<br>
      <br>
      //===================<br>
      <br>
      I finally figured out (doh!) that it probably wasn't anything to
      with permissions (after much futile messing around with attrib and
      chmod and Windows Explorer), but the fact that the Makefile in
      xmlsec1-1.2.18/include/xmlsec was, I think, trying to remove the
      directory it was currently sitting in.  See
      xmlsec1-1.2.18/include/xmlsec/Makefile.in, lines 741-762:<br>
      <br>
      //===================<br>
      ...<br>
      remove-old-headers:<br>
          @if test "x$(DESTDIR)" = "x" && test -d
      "$(includedir)/xmlsec"; then \<br>
              echo
      "----------------------------------------------------------------------";
      \<br>
              echo; \<br>
              echo "*** WARNING ***:"; \<br>
              echo; \<br>
              echo "You seem to have old xmlsec header files installed
      in:"; \<br>
              echo; \<br>
              echo "  \"$(includedir)/xmlsec\""; \<br>
              echo; \<br>
              echo "The entire directory will be removed now."; \<br>
              echo "To allow parallel installation of different xmlsec
      library versions,"; \<br>
              echo "the header files are now installed in a version
      specific subdirectory:"; \<br>
              echo; \<br>
              echo "  \"$(xmlsecincdir)\""; \<br>
              echo; \<br>
              echo
      "----------------------------------------------------------------------";
      \<br>
              echo; \<br>
              rm -rf "$(includedir)/xmlsec"; \<br>
          fi<br>
      <br>
      install-exec-hook: remove-old-headers<br>
      ...<br>
      //===================<br>
      <br>
      My workaround was just to comment-out the "rm" line, which
      resulted in workingness.<br>
      <br>
      I suspect that this is an actual bug rather than an aspect of my
      stupidity.<br>
      <br>
      Mike<br>
      <br>
      On 04/02/2013 21:51, Roumen Petrov wrote:<br>
    </div>
    <blockquote cite="mid:51102D55.4090803@roumenpetrov.info"
      type="cite">Mike Peat wrote:
      <br>
      <blockquote type="cite">Ignore me - I found it.  It was of course
        called "libxmlsec1-openssl.dll" rather than the
        "xmlsec-openssl.dll" I was looking for... as any fule kno.
        <br>
      </blockquote>
      Yes and no ( see  below)
      <br>
      <br>
      <blockquote type="cite">Mike
        <br>
        <br>
        On 28/01/2013 19:18, Mike Peat wrote:
        <br>
        <blockquote type="cite">Hi anybody who may be able to help
          <br>
          <br>
          I am trying to build xmlsec under mingw/msys.
          <br>
          <br>
          I have got to the point where it SEEMS to build OK with the
          following config:
          <br>
          <br>
          ./configure --prefix=$PWD
          --with-libxml-src=/projects/xmlsec1/libxml2-2.9.0  \
          <br>
          --with-libxslt-src=/projects/xmlsec1/libxslt-1.1.27
          --build=i686-pc-mingw32 \
          <br>
                           --with-openssl=/local/ssl
          <br>
          <br>
          make
          <br>
          <br>
          then completes OK (there are some warnings about various libs
          appearing to have been moved).  However...
          <br>
          <br>
          make check
          <br>
          <br>
          logs lots of errors of the form:
          <br>
          <br>
          Error: unable to load xmlsec-openssl library. Make sure that
          you have
          <br>
          this it installed, check shared libraries path
          (LD_LIBRARY_PATH)
          <br>
          envornment variable or use "--crypto" option to specify
          different
          <br>
          crypto engine.
          <br>
        </blockquote>
      </blockquote>
      Based on configure command I expect native build. I cannot
      understand why is specified i686-pc-mingw32. May be in you
      environment native compiler is i686-pc-mingw32-gcc.exe and gcc.exe
      is another compiler.
      <br>
      <br>
      More important to reported case is use of LD_LIBRARY_PATH. So many
      projects will set this environment variable but
      shared-path-variable is platform(os) dependent. On windows it is
      only PATH .
      <br>
      <br>
      As xmlsec use libtool dl-library and this library use own path
      variable (LTDL_LIBRARY_PATH) and I prefer to use lt-variable in my
      linux->mingw cross-build environment:
      <br>
          # set LTDL_LIBRARY_PATH so ltdl will find *.la files in build
      <br>
          # dir instead installed and will load dll from build tree
      <br>
          LTDL_LIBRARY_PATH=
      <br>
          LTDL_LIBRARY_PATH="`winepath -w
      \`pwd\`/src/mscrypto`;$LTDL_LIBRARY_PATH"
      <br>
          LTDL_LIBRARY_PATH="`winepath -w
      \`pwd\`/src/gcrypt`;$LTDL_LIBRARY_PATH"
      <br>
          LTDL_LIBRARY_PATH="`winepath -w
      \`pwd\`/src/openssl`;$LTDL_LIBRARY_PATH"
      <br>
      ....
      <br>
          make check ...
      <br>
      <br>
      I lack time to test with relative paths and with ':' as
      path-separator. If this work on windows may be xmlsec could be
      improved to set LTDL_LIBRARY_PATH instead LD_LIBRARY_PATH to allow
      test to be executed on more platforms.
      <br>
      <br>
      Proposed change is to use following:
      <br>
      ....
      <br>
      PRECHECK_COMMANDS= \
      <br>
          for i in $(XMLSEC_CRYPTO_LIST) ; do \
      <br>
              export LTDL_LIBRARY_PATH="src/$$i:$$LTDL_LIBRARY_PATH" ; \
      <br>
          done && \
      <br>
      ....
      <br>
      in Makefile.
      <br>
      <br>
      Feedback is welcome .
      <br>
      <br>
      <blockquote type="cite">
        <blockquote type="cite">Can anybody tell me what to do about
          this?  I can't find a DLL of that (or similar) name anywhere.
          <br>
        </blockquote>
      </blockquote>
      [SNIP]
      <br>
      <br>
      <blockquote type="cite">
        <blockquote type="cite">Mike
          <br>
        </blockquote>
      </blockquote>
      <br>
      Roumen
      <br>
      <br>
      .
      <br>
      <br>
    </blockquote>
    <br>
  </body>
</html>