Hi all,

I'm not sure if anyone else has done this before but I'm trying to get
openssl to compile using mingw 64bit.

I do a normal configure for mingw 32bit:

./configure zlib no-asm no-shared threads mingw

And then change the Makefile to support mingw 64bit:

sed -i 's/-march=i486//g' Makefile
awk -F= '{ if ($1 == "CC") {print "CC=x86_64-w64-mingw32-gcc"} else {print
;} }' Makefile >Makefile.new
cp Makefile.new Makefile
awk -F= '{ if ($1 == "AR") {print "AR=x86_64-w64-mingw32-ar rc"} else {print
;}}' Makefile >Makefile.new
cp Makefile.new Makefile
awk -F= '{ if ($1 == "RANLIB") {print "RANLIB=x86_64-w64-mingw32-ranlib"}
else {print ;} }' Makefile >Makefile.new
cp Makefile.new Makefile

But I get this error after compiling for a while:

x86_64-w64-mingw32-gcc -I.. -I../.. -I../asn1 -I../evp -I../../include
-DZLIB -
DOPENSSL_THREADS  -DDSO_WIN32 -mno-cygwin -DL_ENDIAN -DOPENSSL_NO_CAPIENG
-fomit
-frame-pointer -O3  -Wall   -c -o err_all.o err_all.c
In file included from err_all.c:96:0:
../../include/openssl/ocsp.h:206:3: error: expected specifier-qualifier-list
bef
ore '(' token
../../include/openssl/ocsp.h:350:2: error: expected specifier-qualifier-list
bef
ore '(' token
../../include/openssl/ocsp.h:413:10: error: expected declaration specifiers
or '
...' before '(' token
../../include/openssl/ocsp.h:424:47: error: expected declaration specifiers
or '
...' before '(' token
../../include/openssl/ocsp.h:484:37: error: expected declaration specifiers
or '
...' before '(' token
make[2]: *** [err_all.o] Error 1

The error has something to do with X509_NAME type.  mingw64bit is based on
gcc 4.5.0.  Available at http://mingw-w64.sourceforge.net
I'm using openssl-1.0.0-beta3 here.

Would it be possible to add 'mingw64' to the configure script?  It would be
basically the same as 'mingw' except exclude the -march=i486 directive and
assume no-asm.

Thanks.

Reply via email to