[xmlsec] Problem with xmlsec configure
Roumen Petrov
xmlsec at roumenpetrov.info
Mon Feb 4 13:51:17 PST 2013
Mike Peat wrote:
> 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.
Yes and no ( see below)
> Mike
>
> On 28/01/2013 19:18, Mike Peat wrote:
>> Hi anybody who may be able to help
>>
>> I am trying to build xmlsec under mingw/msys.
>>
>> I have got to the point where it SEEMS to build OK with the following
>> config:
>>
>> ./configure --prefix=$PWD
>> --with-libxml-src=/projects/xmlsec1/libxml2-2.9.0 \
>> --with-libxslt-src=/projects/xmlsec1/libxslt-1.1.27
>> --build=i686-pc-mingw32 \
>> --with-openssl=/local/ssl
>>
>> make
>>
>> then completes OK (there are some warnings about various libs
>> appearing to have been moved). However...
>>
>> make check
>>
>> logs lots of errors of the form:
>>
>> Error: unable to load xmlsec-openssl library. Make sure that you have
>> this it installed, check shared libraries path (LD_LIBRARY_PATH)
>> envornment variable or use "--crypto" option to specify different
>> crypto engine.
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.
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 .
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:
# set LTDL_LIBRARY_PATH so ltdl will find *.la files in build
# dir instead installed and will load dll from build tree
LTDL_LIBRARY_PATH=
LTDL_LIBRARY_PATH="`winepath -w
\`pwd\`/src/mscrypto`;$LTDL_LIBRARY_PATH"
LTDL_LIBRARY_PATH="`winepath -w \`pwd\`/src/gcrypt`;$LTDL_LIBRARY_PATH"
LTDL_LIBRARY_PATH="`winepath -w
\`pwd\`/src/openssl`;$LTDL_LIBRARY_PATH"
....
make check ...
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.
Proposed change is to use following:
....
PRECHECK_COMMANDS= \
for i in $(XMLSEC_CRYPTO_LIST) ; do \
export LTDL_LIBRARY_PATH="src/$$i:$$LTDL_LIBRARY_PATH" ; \
done && \
....
in Makefile.
Feedback is welcome .
>> Can anybody tell me what to do about this? I can't find a DLL of
>> that (or similar) name anywhere.
[SNIP]
>> Mike
Roumen
More information about the xmlsec
mailing list