1 Dec 2010 15:03
RE: [openssl.org #2371] Openssl mingw build error.
Kumaran Moodley via RT <rt <at> openssl.org>
2010-12-01 14:03:09 GMT
2010-12-01 14:03:09 GMT
Thanks Andy. I have updated to openssl-1.0.0b and also had a problem building the code however there is a patch available to fix the mingw compilation issue. I tried this patch and I have had no issues. Thanks for the help. On another note I found a bug on the openssl EVP_PKEY_verify(3) documentation (http://www.openssl.org/docs/crypto/EVP_PKEY_verify.html). In the synopsis the API is defined as int EVP_PKEY_verify(EVP_PKEY_CTX *ctx, const unsigned char *sig, size_t siglen, const unsigned char *tbs, size_t tbslen); However in the example section, /* Perform operation */ ret = EVP_PKEY_verify(ctx, md, mdlen, sig, siglen); Which shows that the message digest variables and the signature variables have been swapped around. I had some signature failures due to that however everything is fine now when I put them correctly. The documentation should be updated though. Thanks. Kind regards Kumaran M -----Original Message----- From: Andy Polyakov via RT [mailto:rt <at> openssl.org] Sent: 19 November 2010 12:57 AM To: Kumaran Moodley Cc: openssl-dev <at> openssl.org Subject: Re: [openssl.org #2371] Openssl mingw build error. > While building the openssl-1.0.0b for windows (using the mingw > compiler) I get the following build error : > > making all in crypto/dso... > make: Entering directory `/cygdrive/f/openssl-1.0.0a/crypto/dso' > gcc -I.. -I../.. -I../asn1 -I../evp -I../../include -DOPENSSL_THREADS > -D_MT -DD > SO_WIN32 -mno-cygwin -DL_ENDIAN -DWIN32_LEAN_AND_MEAN > -fomit-frame-pointer -O3 - > march=i486 -Wall -DOPENSSL_BN_ASM_PART_WORDS -DOPENSSL_IA32_SSE2 > -DOPENSSL_BN_AS M_MONT -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DMD5_ASM -DRMD160_ASM -DAES_ASM -DW > HIRLPOOL_ASM -c -o dso_win32.o dso_win32.c > dso_win32.c: In function `win32_load': > dso_win32.c:173: error: `HINSTANCE' undeclared (first use in this > function) > dso_win32.c:173: error: (Each undeclared identifier is reported only > once > dso_win32.c:173: error: for each function it appears in.) > dso_win32.c:173: error: parse error before "h" The compilation relies on _WIN32 macro being pre-defined by compiler. This applies to *all* compilers targeting Windows, including mingw. So the key question is why doesn't your compiler define it? Examine 'gcc -dumpspecs' output and see if _WIN32 is defined for -mno-cygwin. If it doesn't, then I'd say it's a bug... A. ______________________________________________________________________ OpenSSL Project http://www.openssl.org Development Mailing List openssl-dev <at> openssl.org Automated List Manager majordomo <at> openssl.org