Thanks. It turns out the OpenSSL headers were incorrectly installed
(DOH!). It compiles just fine now.
Pepak
If you look at the code, you will see that it complains about BIO which
is openssl struct.
You will need to figure out why it is not available in the openssl
header files or why
openssl header files are not included.
Aleksey
On 7/12/11 12:07 AM, Josef Kokeš wrote:
Hi!
I could use some help with compiling XmlSec (the latest version
1.2.18) on Windows. My original attempts were done using MingW/Msys
and these failed even before I got to compiling XmlSec (I just
couldn't get some prerequisites to compile).
With MSVC 10.0, I eventually managed to compile all prerequisites, and
now I am trying to compile XmlSec itself. The problem is, I keep
getting thousands of errors in header files:
cl.exe /nologo /D "WIN32" /D "_WINDOWS" /D "_MBCS" /D "_REENTRANT" /W1
/MD /I.. /I..\include /I.\include /D PACKAGE=\"xmlsec\" /D
"HAVE_STDIO_H" /D "HAVE_STDLIB_H" /D "HAVE_STRING_H" /D "HAVE_CTYPE_H"
/D "HAVE_MALLOC_H" /D "HAVE_MEMORY_H" /D "_DEBUG" /Od /Z7
/DXMLSEC_MSCRYPTO_NT4=1 /D "XMLSEC_DL_WIN32" /D "XMLSEC_OPENSSL_098"
/D "XMLSEC_CRYPTO_OPENSSL" /D "XMLSEC_CRYPTO=\"openssl\""
/Folibxmlsec_openssl.int\ /c ..\src\openssl\app.c ..\src\openssl\bn.c
..\src\openssl\ciphers.c ..\src\openssl\crypto.c
..\src\openssl\digests.c ..\src\openssl\evp.c ..\src\openssl\hmac.c
..\src\openssl\kt_rsa.c ..\src\openssl\kw_aes.c
..\src\openssl\kw_des.c ..\src\openssl\signatures.c
..\src\openssl\symkeys.c ..\src\openssl\x509.c ..\src\openssl\x509vfy.c
app.c
C:\xml\xmlsec1-1.2.18\include\xmlsec/openssl/app.h(56) : error C2143:
syntax error : missing ')' before '*'
C:\xml\xmlsec1-1.2.18\include\xmlsec/openssl/app.h(56) : error C2081:
'BIO' : name in formal parameter list illegal
C:\xml\xmlsec1-1.2.18\include\xmlsec/openssl/app.h(56) : error C2143:
syntax error : missing '{' before '*'
C:\xml\xmlsec1-1.2.18\include\xmlsec/openssl/app.h(57) : error C2370:
'xmlSecKeyDataFormat' : redefinition; different storage class
C:\xml\xmlsec1-1.2.18\include\xmlsec/keysdata.h(236) : see declaration
of 'xmlSecKeyDataFormat'
C:\xml\xmlsec1-1.2.18\include\xmlsec/openssl/app.h(57) : error C2146:
syntax error : missing ';' before identifier 'format'
C:\xml\xmlsec1-1.2.18\include\xmlsec/openssl/app.h(58) : error C2059:
syntax error : 'type'
C:\xml\xmlsec1-1.2.18\include\xmlsec/openssl/app.h(58) : error C2059:
syntax error : ')'
C:\xml\xmlsec1-1.2.18\include\xmlsec/openssl/app.h(84) : error C2143:
syntax error : missing ')' before '*'
C:\xml\xmlsec1-1.2.18\include\xmlsec/openssl/app.h(84) : error C2143:
syntax error : missing '{' before '*'
C:\xml\xmlsec1-1.2.18\include\xmlsec/openssl/app.h(85) : error C2370:
'xmlSecKeyDataFormat' : redefinition; different storage class
C:\xml\xmlsec1-1.2.18\include\xmlsec/keysdata.h(236) : see declaration
of 'xmlSecKeyDataFormat'
C:\xml\xmlsec1-1.2.18\include\xmlsec/openssl/app.h(85) : error C2146:
syntax error : missing ';' before identifier 'format'
C:\xml\xmlsec1-1.2.18\include\xmlsec/openssl/app.h(86) : error C2059:
syntax error : 'type'
C:\xml\xmlsec1-1.2.18\include\xmlsec/openssl/app.h(88) : error C2059:
syntax error : ')'
And so on and so on. After 100 errors the compiler stops and tries
another file, which fails with similar errors (on different lines,
though). Searching the archives, I found a 2005 message which seemed
somewhat relevant
(http://www.mail-archive.com/[email protected]/msg02730.html) and the
answer suggested that the user was using a wrong OpenSSL version. That
is not the case with my setup, as far as I can tell.
I am using a clean Windows XP SP3 install with a clean Microsoft
Visual Studio 10.0 Express on it. I compiled the following packages
(in listed order):
- Zlib 1.2.5 - I used the supplied win32\Makefile.msc
- Iconv 1.13 - this one gave me headaches until I learned that I can
build it using MingW and then copy the .a files to .lib files for MSVC
to use. Maybe this is the cause of my problems? But what else am I
supposed to do, considering that Iconv doesn't support MSVC anymore?
- LibXml2 2.7.8 - with configure.js options compiler=msvc zlib=yes
debug=yes
- LibXslt 1.1.26 - with configure.js options compiler=msvc zlib=yes
debug=yes
- OpenSSL 0.9.8r - with configure option VC-WIN32, build batch
ms\do_masm and makefile ms\ntdll.mak
- XmlSec 1.2.18 - with configure.js options crypto=openssl unicode=no
debug=yes. I also tried crypto=openssl=098, under the influence of the
2005 message
What can I possibly do to fix this problem? The files with errors
listed seem OK to me, but I am not a C programmer so maybe I am
missing something obvious.
Thanks,
Pepak
_______________________________________________
xmlsec mailing list
[email protected]
http://www.aleksey.com/mailman/listinfo/xmlsec
__ Zkontrolovano antivirovym programem NOD32 __
_______ Mailscanner spolecnosti Phoenix _______
_______________________________________________
xmlsec mailing list
[email protected]
http://www.aleksey.com/mailman/listinfo/xmlsec