I am trying to build OpenSSL on Windows 10 64 bit machine using Code::blocks and Mingw. I already installed ActivePerl and MSYS. I am able to execute
perl Configure mingw
without errors. The problems is on executing the MAKE command. Regardless I am using the windows command prompt or MSYS, I always obtain the following error
C:\DiscoD\openssl>make CC=i586-mingw32msvc-gcc RANLIB=i586-mingw32msvc-ranlib
C:\Perl64\bin\perl.exe "-I." -Mconfigdata "util\dofile.pl" \
"-oMakefile" crypto\include\internal\bn_conf.h.in > crypto\include\internal\bn_conf.h
/bin/sh: C:Perl64binperl.exe: command not found
make: *** [crypto\include\internal\bn_conf.h] Error 127
It seems the backslahes are removed from Perl.exe path, so the script cannot find C:/Perl64/bin/perl.exe. How to solve? Thanks
I had the same problem and found that opening the Makefile and searching for "PERL=" found the line "PERL=C:\MinGW\msys\1.0\bin\perl.exe". Replacing the single-backslashes for double-backslashes (i.e., "PERL=C:\\MinGW\\msys\\1.0\\bin\\perl.exe") corrected the problem. Single forward-slashes also worked.
You should see this recommendation from the OpenSSL distribution:
https://github.com/openssl/openssl/blob/master/NOTES.PERL#L30
As you are doing an MSYS/MinGW build you should ensure that MSYS perl is installed (and on your path in preference to the ActiveState version). Then try the build again.