MinGW64 / MSYS2 and ./Configure : use of Windows style path causing failures to 'make'

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
9 messages Options
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

MinGW64 / MSYS2 and ./Configure : use of Windows style path causing failures to 'make'

OpenSSL - User mailing list
I am using a MinGW64 / MSYS2 environment to compile OpenSSL1.1.0c, but failing consistently after multiple attempts with a few variations each attempt (including deleting entire source directory and re-untar/ungzipping).   I believe there's something wrong either with my environment settings or ./Configure options.  This is the output of ./Configure after setting only the CFLAGS env var:

$ export "CFLAGS=-03"
$ ./Configure mingw64 --prefix=/usr/local zlib shared
Configuring OpenSSL version 1.1.0c (0x1010003fL)
    no-asan         [default]  OPENSSL_NO_ASAN
    no-crypto-mdebug [default]  OPENSSL_NO_CRYPTO_MDEBUG
    no-crypto-mdebug-backtrace [default]  OPENSSL_NO_CRYPTO_MDEBUG_BACKTRACE
    no-ec_nistp_64_gcc_128 [default]  OPENSSL_NO_EC_NISTP_64_GCC_128
    no-egd          [default]  OPENSSL_NO_EGD
    no-fuzz-afl     [default]  OPENSSL_NO_FUZZ_AFL
    no-fuzz-libfuzzer [default]  OPENSSL_NO_FUZZ_LIBFUZZER
    no-heartbeats   [default]  OPENSSL_NO_HEARTBEATS
    no-md2          [default]  OPENSSL_NO_MD2 (skip dir)
    no-msan         [default]  OPENSSL_NO_MSAN
    no-rc5          [default]  OPENSSL_NO_RC5 (skip dir)
    no-sctp         [default]  OPENSSL_NO_SCTP
    no-ssl-trace    [default]  OPENSSL_NO_SSL_TRACE
    no-ssl3         [default]  OPENSSL_NO_SSL3
    no-ssl3-method  [default]  OPENSSL_NO_SSL3_METHOD
    no-ubsan        [default]  OPENSSL_NO_UBSAN
    no-unit-test    [default]  OPENSSL_NO_UNIT_TEST
    no-weak-ssl-ciphers [default]  OPENSSL_NO_WEAK_SSL_CIPHERS
    no-zlib-dynamic [default]
Configuring for mingw64
CC            =gcc
CFLAG         =-DL_ENDIAN -DWIN32_LEAN_AND_MEAN -DUNICODE -D_UNICODE -m64 -Wall -O3 -D_MT
SHARED_CFLAG  =-D_WINDLL
DEFINES       =ZLIB DSO_WIN32 NDEBUG OPENSSL_THREADS OPENSSL_NO_STATIC_ENGINE OPENSSL_PIC OPENSSL_IA32_SSE2 OPENSSL_BN_ASM_MONT OPENSSL_BN_ASM_MONT5 OPENSSL_BN_ASM_GF2m SHA1_ASM SHA256_ASM SHA512_ASM RC4_ASM MD5_ASM AES_ASM VPAES_ASM BSAES_ASM GHASH_ASM ECP_NISTZ256_ASM POLY1305_ASM
LFLAG         =
PLIB_LFLAG    =
EX_LIBS       =-lz -lws2_32 -lgdi32 -lcrypt32
APPS_OBJ      =win32_init.o
CPUID_OBJ     =x86_64cpuid.o
UPLINK_OBJ    =
BN_ASM        =asm/x86_64-gcc.o x86_64-mont.o x86_64-mont5.o x86_64-gf2m.o rsaz_exp.o rsaz-x86_64.o rsaz-avx2.o
EC_ASM        =ecp_nistz256.o ecp_nistz256-x86_64.o
DES_ENC       =des_enc.o fcrypt_b.o
AES_ENC       =aes-x86_64.o vpaes-x86_64.o bsaes-x86_64.o aesni-x86_64.o aesni-sha1-x86_64.o aesni-sha256-x86_64.o aesni-mb-x86_64.o
BF_ENC        =bf_enc.o
CAST_ENC      =c_enc.o
RC4_ENC       =rc4-x86_64.o rc4-md5-x86_64.o
RC5_ENC       =rc5_enc.o
MD5_OBJ_ASM   =md5-x86_64.o
SHA1_OBJ_ASM  =sha1-x86_64.o sha256-x86_64.o sha512-x86_64.o sha1-mb-x86_64.o sha256-mb-x86_64.o
RMD160_OBJ_ASM=
CMLL_ENC      =cmll-x86_64.o cmll_misc.o
MODES_OBJ     =ghash-x86_64.o aesni-gcm-x86_64.o
PADLOCK_OBJ   =e_padlock-x86_64.o
CHACHA_ENC    =chacha-x86_64.o
POLY1305_OBJ  =poly1305-x86_64.o
BLAKE2_OBJ    =
PROCESSOR     =
RANLIB        =ranlib
ARFLAGS       =
PERL          =C:\msys64\mingw64\bin\perl.exe

SIXTY_FOUR_BIT mode

Configured for mingw64.

$ make
C:\msys64\mingw64\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:msys64mingw64binperl.exe: command not found
make: *** [Makefile:701: crypto\include\internal\bn_conf.h] Error 127


It seems the "\" is the culprit here, since the execution of the make command appears to strip those out and then (as expected) the /bin/sh cannot recognize that large hash of what should have been the path to Perl.  I did edit the first Makefile above to :
    Change the base PERL to "C:/msys64/mingw64/bin/perl.exe", *and*
    crypto/include/internal/bin_conf.h.in > crypto/include/internal/bin_conf.h

The above worked, but *only* for that line of the make file (as I expected).  It then fails at the very next line because I didn't edit every "\" to become "/" instead.  I'm not sure I'm willing to do that much editing... seems there's got to be a better way to make this work.

I realize this has something to do with specifying ./Configure mingw64 .... and how it's populating the Makefiles using Windows-style paths, but I'm not sure it's safe / okay to fake having a Unix build target instead, since this will likely create new / other problems with libraries, etc.

Am I missing a ./Configure option, an environment variable I should preset, or something else altogether?




--
openssl-users mailing list
To unsubscribe: https://mta.openssl.org/mailman/listinfo/openssl-users
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: MinGW64 / MSYS2 and ./Configure : use of Windows style path causing failures to 'make'

Jeffrey Walton-3
On Tue, Dec 27, 2016 at 12:24 AM, Ron Gaw <ronmlgaw at yahoo dot com>
via openssl-users <[hidden email]> wrote:

> I am using a MinGW64 / MSYS2 environment to compile OpenSSL1.1.0c, but
> failing consistently after multiple attempts with a few variations each
> attempt (including deleting entire source directory and
> re-untar/ungzipping).   I believe there's something wrong either with my
> environment settings or ./Configure options.  This is the output of
> ./Configure after setting only the CFLAGS env var:
>
> $ export "CFLAGS=-03"
> $ ./Configure mingw64 --prefix=/usr/local zlib shared
> Configuring OpenSSL version 1.1.0c (0x1010003fL)
> ...
> PERL          =C:\msys64\mingw64\bin\perl.exe
>
> SIXTY_FOUR_BIT mode
>
> Configured for mingw64.
>
> $ make
> C:\msys64\mingw64\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:msys64mingw64binperl.exe: command not found
> make: *** [Makefile:701: crypto\include\internal\bn_conf.h] Error 127
>
>
> It seems the "\" is the culprit here, since the execution of the make
> command appears to strip those out and then (as expected) the /bin/sh cannot
> recognize that large hash of what should have been the path to Perl.  I did
> edit the first Makefile above to :
>     Change the base PERL to "C:/msys64/mingw64/bin/perl.exe", *and*
>     crypto/include/internal/bin_conf.h.in >
> crypto/include/internal/bin_conf.h
>
> The above worked, but *only* for that line of the make file (as I expected).
> It then fails at the very next line because I didn't edit every "\" to
> become "/" instead.  I'm not sure I'm willing to do that much editing...
> seems there's got to be a better way to make this work.
>
> I realize this has something to do with specifying ./Configure mingw64 ....
> and how it's populating the Makefiles using Windows-style paths, but I'm not
> sure it's safe / okay to fake having a Unix build target instead, since this
> will likely create new / other problems with libraries, etc.
>
> Am I missing a ./Configure option, an environment variable I should preset,
> or something else altogether?

http://stackoverflow.com/q/40948353/608639
--
openssl-users mailing list
To unsubscribe: https://mta.openssl.org/mailman/listinfo/openssl-users
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: MinGW64 / MSYS2 and ./Configure : use of Windows style path causing failures to 'make'

OpenSSL - User mailing list
From: Jeffrey Walton <[hidden email]>
via openssl-users <[hidden email]> wrote:




In my original note, I explained that I'd done something similar to what the above stackoverflow.com entry suggested:
....
>> I did edit the first Makefile above to :
>>    1. Change the base PERL to "C:/msys64/mingw64/bin/perl.exe", *and*
>>    2. crypto/include/internal/bin_conf.h.in > crypto/include/internal/bin_conf.h
>>
>> The above worked, but *only* for that line of the make file (as I expected).

>>ADDENDUM<< Changing PERL to "C:/mysys64/mingw64/bin/perl.exe" in the top level Makefile was sufficient, even the second action correctly called perl.exe.

The real issue is with the "\" in the paths for all the *.h files (there are many of these in each Makefile, too numerous to hand edit).  I can't just find / replace all "\", this will create new issues where the Makefile needs the "\" as it is.

I can't imagine the Makefiles use the "\" in the paths when Configure'd for a Unix (Linux) system, there should be a way to modify the Configure Perl script to use Unix paths when compiling for "mingw64" systems, but I've yet to find it in the Configure code....


--
openssl-users mailing list
To unsubscribe: https://mta.openssl.org/mailman/listinfo/openssl-users
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: MinGW64 / MSYS2 and ./Configure : use of Windows style path causing failures to 'make'

Richard Levitte - VMS Whacker-2
In reply to this post by OpenSSL - User mailing list
In message <[hidden email]> on Tue, 27 Dec 2016 05:24:04 +0000 (UTC), "Ron Gaw <ronmlgaw at yahoo dot com>" <[hidden email]> said:

ronmlgaw> I am using a MinGW64 / MSYS2 environment to compile OpenSSL1.1.0c, but
ronmlgaw> failing consistently after multiple attempts with a few variations
ronmlgaw> each attempt (including deleting entire source directory and
ronmlgaw> re-untar/ungzipping). I believe there's something wrong either with my
ronmlgaw> environment settings or ./Configure options. This is the output of .
ronmlgaw> /Configure after setting only the CFLAGS env var:
ronmlgaw>
ronmlgaw> $ export "CFLAGS=-03"
ronmlgaw> $ ./Configure mingw64 --prefix=/usr/local zlib shared
ronmlgaw> Configuring OpenSSL version 1.1.0c (0x1010003fL)
ronmlgaw> no-asan [default] OPENSSL_NO_ASAN
ronmlgaw> no-crypto-mdebug [default] OPENSSL_NO_CRYPTO_MDEBUG
ronmlgaw> no-crypto-mdebug-backtrace [default]
ronmlgaw> OPENSSL_NO_CRYPTO_MDEBUG_BACKTRACE
ronmlgaw> no-ec_nistp_64_gcc_128 [default] OPENSSL_NO_EC_NISTP_64_GCC_128
ronmlgaw> no-egd [default] OPENSSL_NO_EGD
ronmlgaw> no-fuzz-afl [default] OPENSSL_NO_FUZZ_AFL
ronmlgaw> no-fuzz-libfuzzer [default] OPENSSL_NO_FUZZ_LIBFUZZER
ronmlgaw> no-heartbeats [default] OPENSSL_NO_HEARTBEATS
ronmlgaw> no-md2 [default] OPENSSL_NO_MD2 (skip dir)
ronmlgaw> no-msan [default] OPENSSL_NO_MSAN
ronmlgaw> no-rc5 [default] OPENSSL_NO_RC5 (skip dir)
ronmlgaw> no-sctp [default] OPENSSL_NO_SCTP
ronmlgaw> no-ssl-trace [default] OPENSSL_NO_SSL_TRACE
ronmlgaw> no-ssl3 [default] OPENSSL_NO_SSL3
ronmlgaw> no-ssl3-method [default] OPENSSL_NO_SSL3_METHOD
ronmlgaw> no-ubsan [default] OPENSSL_NO_UBSAN
ronmlgaw> no-unit-test [default] OPENSSL_NO_UNIT_TEST
ronmlgaw> no-weak-ssl-ciphers [default] OPENSSL_NO_WEAK_SSL_CIPHERS
ronmlgaw> no-zlib-dynamic [default]
ronmlgaw> Configuring for mingw64
ronmlgaw> CC =gcc
ronmlgaw> CFLAG =-DL_ENDIAN -DWIN32_LEAN_AND_MEAN -DUNICODE -D_UNICODE -m64 -
ronmlgaw> Wall -O3 -D_MT
ronmlgaw> SHARED_CFLAG =-D_WINDLL
ronmlgaw> DEFINES =ZLIB DSO_WIN32 NDEBUG OPENSSL_THREADS
ronmlgaw> OPENSSL_NO_STATIC_ENGINE OPENSSL_PIC OPENSSL_IA32_SSE2
ronmlgaw> OPENSSL_BN_ASM_MONT OPENSSL_BN_ASM_MONT5 OPENSSL_BN_ASM_GF2m SHA1_ASM
ronmlgaw> SHA256_ASM SHA512_ASM RC4_ASM MD5_ASM AES_ASM VPAES_ASM BSAES_ASM
ronmlgaw> GHASH_ASM ECP_NISTZ256_ASM POLY1305_ASM
ronmlgaw> LFLAG =
ronmlgaw> PLIB_LFLAG =
ronmlgaw> EX_LIBS =-lz -lws2_32 -lgdi32 -lcrypt32
ronmlgaw> APPS_OBJ =win32_init.o
ronmlgaw> CPUID_OBJ =x86_64cpuid.o
ronmlgaw> UPLINK_OBJ =
ronmlgaw> BN_ASM =asm/x86_64-gcc.o x86_64-mont.o x86_64-mont5.o x86_64-gf2m.o
ronmlgaw> rsaz_exp.o rsaz-x86_64.o rsaz-avx2.o
ronmlgaw> EC_ASM =ecp_nistz256.o ecp_nistz256-x86_64.o
ronmlgaw> DES_ENC =des_enc.o fcrypt_b.o
ronmlgaw> AES_ENC =aes-x86_64.o vpaes-x86_64.o bsaes-x86_64.o aesni-x86_64.o
ronmlgaw> aesni-sha1-x86_64.o aesni-sha256-x86_64.o aesni-mb-x86_64.o
ronmlgaw> BF_ENC =bf_enc.o
ronmlgaw> CAST_ENC =c_enc.o
ronmlgaw> RC4_ENC =rc4-x86_64.o rc4-md5-x86_64.o
ronmlgaw> RC5_ENC =rc5_enc.o
ronmlgaw> MD5_OBJ_ASM =md5-x86_64.o
ronmlgaw> SHA1_OBJ_ASM =sha1-x86_64.o sha256-x86_64.o sha512-x86_64.o
ronmlgaw> sha1-mb-x86_64.o sha256-mb-x86_64.o
ronmlgaw> RMD160_OBJ_ASM=
ronmlgaw> CMLL_ENC =cmll-x86_64.o cmll_misc.o
ronmlgaw> MODES_OBJ =ghash-x86_64.o aesni-gcm-x86_64.o
ronmlgaw> PADLOCK_OBJ =e_padlock-x86_64.o
ronmlgaw> CHACHA_ENC =chacha-x86_64.o
ronmlgaw> POLY1305_OBJ =poly1305-x86_64.o
ronmlgaw> BLAKE2_OBJ =
ronmlgaw> PROCESSOR =
ronmlgaw> RANLIB =ranlib
ronmlgaw> ARFLAGS =
ronmlgaw> PERL =C:\msys64\mingw64\bin\perl.exe

The PERL definition is a bit odd for a mingw perl.  That path comes
from the perl variable $^X.

In my MSYS2/Mingw64 shell, I get this:

    Richard@OSFWin7 MINGW64 ~
    $ type perl
    perl is hashed (/usr/bin/perl)
   
    Richard@OSFWin7 MINGW64 ~
    $ perl -v
   
    This is perl 5, version 22, subversion 1 (v5.22.1) built for i686-msys-thread-multi-64int
   
    Copyright 1987-2015, Larry Wall
   
    Perl may be copied only under the terms of either the Artistic License or the
    GNU General Public License, which may be found in the Perl 5 source kit.
   
    Complete documentation for Perl, including FAQ lists, should be found on
    this system using "man perl" or "perldoc perl".  If you have access to the
    Internet, point your browser at http://www.perl.org/, the Perl Home Page.
   
   
    Richard@OSFWin7 MINGW64 ~
    $ perl -e 'print $^X,"\n";'
    perl

So the question is, what perl do you use?  From your output, I'd say
it isn't the mingw64 one...

ronmlgaw> SIXTY_FOUR_BIT mode
ronmlgaw>
ronmlgaw> Configured for mingw64.

    Richard@OSFWin7 MINGW64 ~/gitwrk/openssl.org/official/_build
    $ ../master/Configure mingw64 --prefix=/usr/local zlib shared
   
    Configuring OpenSSL version 1.1.0c (0x1010003fL)
        no-asan         [default]  OPENSSL_NO_ASAN
        no-crypto-mdebug [default]  OPENSSL_NO_CRYPTO_MDEBUG
        no-crypto-mdebug-backtrace [default]  OPENSSL_NO_CRYPTO_MDEBUG_BACKTRACE
        no-ec_nistp_64_gcc_128 [default]  OPENSSL_NO_EC_NISTP_64_GCC_128
        no-egd          [default]  OPENSSL_NO_EGD
        no-fuzz-afl     [default]  OPENSSL_NO_FUZZ_AFL
        no-fuzz-libfuzzer [default]  OPENSSL_NO_FUZZ_LIBFUZZER
        no-heartbeats   [default]  OPENSSL_NO_HEARTBEATS
        no-md2          [default]  OPENSSL_NO_MD2 (skip dir)
        no-msan         [default]  OPENSSL_NO_MSAN
        no-rc5          [default]  OPENSSL_NO_RC5 (skip dir)
        no-sctp         [default]  OPENSSL_NO_SCTP
        no-ssl-trace    [default]  OPENSSL_NO_SSL_TRACE
        no-ssl3         [default]  OPENSSL_NO_SSL3
        no-ssl3-method  [default]  OPENSSL_NO_SSL3_METHOD
        no-ubsan        [default]  OPENSSL_NO_UBSAN
        no-unit-test    [default]  OPENSSL_NO_UNIT_TEST
        no-weak-ssl-ciphers [default]  OPENSSL_NO_WEAK_SSL_CIPHERS
        no-zlib-dynamic [default]
    Configuring for mingw64
    CC            =gcc
    CFLAG         =-DL_ENDIAN -DWIN32_LEAN_AND_MEAN -DUNICODE -D_UNICODE -m64 -Wall -O3 -D_MT
    SHARED_CFLAG  =-D_WINDLL
    DEFINES       =ZLIB DSO_WIN32 NDEBUG OPENSSL_THREADS OPENSSL_NO_STATIC_ENGINE OPENSSL_PIC OPENSSL_IA32_SSE2 OPENSSL_BN_ASM_MONT OPENSSL_BN_ASM_MONT5 OPENSSL_BN_ASM_GF2m SHA1_ASM SHA256_ASM SHA512_ASM RC4_ASM MD5_ASM AES_ASM VPAES_ASM BSAES_ASM GHASH_ASM ECP_NISTZ256_ASM POLY1305_ASM
    LFLAG         =
    PLIB_LFLAG    =
    EX_LIBS       =-lz -lws2_32 -lgdi32 -lcrypt32
    APPS_OBJ      =win32_init.o
    CPUID_OBJ     =x86_64cpuid.o
    UPLINK_OBJ    =
    BN_ASM        =asm/x86_64-gcc.o x86_64-mont.o x86_64-mont5.o x86_64-gf2m.o rsaz_exp.o rsaz-x86_64.o rsaz-avx2.o
    EC_ASM        =ecp_nistz256.o ecp_nistz256-x86_64.o
    DES_ENC       =des_enc.o fcrypt_b.o
    AES_ENC       =aes-x86_64.o vpaes-x86_64.o bsaes-x86_64.o aesni-x86_64.o aesni-sha1-x86_64.o aesni-sha256-x86_64.o aesni-mb-x86_64.o
    BF_ENC        =bf_enc.o
    CAST_ENC      =c_enc.o
    RC4_ENC       =rc4-x86_64.o rc4-md5-x86_64.o
    RC5_ENC       =rc5_enc.o
    MD5_OBJ_ASM   =md5-x86_64.o
    SHA1_OBJ_ASM  =sha1-x86_64.o sha256-x86_64.o sha512-x86_64.o sha1-mb-x86_64.o sha256-mb-x86_64.o
    RMD160_OBJ_ASM=
    CMLL_ENC      =cmll-x86_64.o cmll_misc.o
    MODES_OBJ     =ghash-x86_64.o aesni-gcm-x86_64.o
    PADLOCK_OBJ   =e_padlock-x86_64.o
    CHACHA_ENC    =chacha-x86_64.o
    POLY1305_OBJ  =poly1305-x86_64.o
    BLAKE2_OBJ    =
    PROCESSOR     =
    RANLIB        =ranlib
    ARFLAGS       =
    PERL          =perl
   
    SIXTY_FOUR_BIT mode
   
    Configured for mingw64.
   
Cheers,
Richard
--
openssl-users mailing list
To unsubscribe: https://mta.openssl.org/mailman/listinfo/openssl-users
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: MinGW64 / MSYS2 and ./Configure : use of Windows style path causing failures to 'make'

OpenSSL - User mailing list
I wondered about that as well. 

First, regarding my msys64: The root '/' is mapped to "C:\msys64", and "/mingw64" is the directory where I keep all things MinGW64 w64.

Second: I do have multiple Perl's installed, though only one in the /mingw64 tree.  In essence, I *think* all the non-mingw64 per stuff I list below is irrelevant, but I'm not ruling those out as possible culprits in this issue...


So here's what I see (spoiler alert : nothing is jumping out at me as the culprit):

$ type /mingw64/bin/perl
/mingw64/bin/perl is /mingw64/bin/perl

$ /mingw64/bin/perl -v

This is perl 5, version 22, subversion 0 (v5.22.0) built for MSWin32-x64-multi-thread

Copyright 1987-2015, Larry Wall

Perl may be copied only under the terms of either the Artistic License or the
GNU General Public License, which may be found in the Perl 5 source kit.

Complete documentation for Perl, including FAQ lists, should be found on
this system using "man perl" or "perldoc perl".  If you have access to the
Internet, point your browser at http://www.perl.org/, the Perl Home Page.

$ pacman -Ss perl  /*--- NOTE: I cut out all the extraneous stuff and narrowed it to only what's [installed]

mingw64/mingw-w64-x86_64-perl 5.22.0-1 [installed]
    A highly capable, feature-rich programming language (mingw-w64)
msys/libpcre 8.38-1 (libraries) [installed]
    A library that implements Perl 5-style regular expressions
msys/libpcre16 8.38-1 (libraries) [installed]
    A library that implements Perl 5-style regular expressions
msys/libpcre32 8.38-1 (libraries) [installed]
    A library that implements Perl 5-style regular expressions
msys/libpcrecpp 8.38-1 (libraries) [installed]
    A library that implements Perl 5-style regular expressions
msys/libpcreposix 8.38-1 (libraries) [installed]
    A library that implements Perl 5-style regular expressions
msys/pcre 8.38-1 [installed]
    A library that implements Perl 5-style regular expressions
msys/perl 5.22.1-1 (base-devel) [installed]
    A highly capable, feature-rich programming language
msys/perl-Authen-SASL 2.16-2 (perl-modules) [installed]
    Perl/CPAN Module Authen::SASL : SASL authentication framework
msys/perl-Convert-BinHex 1.123-2 [installed]
    Perl module to extract data from Macintosh BinHex files
msys/perl-Encode-Locale 1.04-1 (perl-modules) [installed]
    Determine the locale encoding
msys/perl-File-Listing 6.04-2 (perl-modules) [installed]
    parse directory listing
msys/perl-HTML-Parser 3.71-3 (perl-modules) [installed]
    Perl HTML parser class
msys/perl-HTML-Tagset 3.20-2 (perl-modules) [installed]
    Data tables useful in parsing HTML
msys/perl-HTTP-Cookies 6.01-2 (perl-modules) [installed]
    HTTP cookie jars
msys/perl-HTTP-Daemon 6.01-2 (perl-modules) [installed]
    A simple http server class
msys/perl-HTTP-Date 6.02-2 (perl-modules) [installed]
    Date conversion routines
msys/perl-HTTP-Message 6.06-2 (perl-modules) [installed]
    HTTP style messages
msys/perl-HTTP-Negotiate 6.01-2 (perl-modules) [installed]
    choose a variant to serve
msys/perl-IO-Socket-SSL 2.016-1 (perl-modules) [installed]
    Nearly transparent SSL encapsulation for IO::Socket::INET
msys/perl-IO-stringy 2.111-1 (perl-modules) [installed]
    I/O on in-core objects like strings/arrays
msys/perl-LWP-MediaTypes 6.02-2 (perl-modules) [installed]
    Guess the media type of a file or a URL
msys/perl-MIME-tools 5.506-1 [installed]
    Parses streams to create MIME entities
msys/perl-MailTools 2.14-1 [installed]
    Various e-mail related modules
msys/perl-Module-Build 0.4212-1 [installed]
    Build, test, and install Perl modules
msys/perl-Net-HTTP 6.09-1 (perl-modules) [installed]
    Low-level HTTP connection (client)
msys/perl-Net-SMTP-SSL 1.02-1 (perl-modules) [installed]
    SSL support for Net::SMTP
msys/perl-Net-SSLeay 1.72-1 (perl-modules) [installed]
    Perl extension for using OpenSSL
msys/perl-TermReadKey 2.33-1 (perl-modules) [installed]
    Provides simple control over terminal driver modes
msys/perl-Test-Pod 1.50-1 (perl-modules) [installed]
    Check for POD errors in files
msys/perl-TimeDate 2.30-2 [installed]
    Date formating subroutines
msys/perl-URI 1.68-1 (perl-modules) [installed]
    Uniform Resource Identifiers (absolute and relative)
msys/perl-WWW-RobotRules 6.02-2 (perl-modules) [installed]
    Database of robots.txt-derived permissions
msys/perl-YAML-Syck 1.29-1 (perl-modules) [installed]
    Fast, lightweight YAML loader and dumper
msys/perl-libwww 6.13-1 (perl-modules) [installed]
    The World-Wide Web library for Perl



From: Richard Levitte <[hidden email]>



levitte>> The PERL definition is a bit odd for a mingw perl.  That path comes
levitte>> mingw64/mingw-w64-x86_64-perl 5.22.0-1 [installed]
levitte>>     A highly capable, feature-rich programming language (mingw-w64)
levitte>> from the perl variable $^X.
levitte>>
levitte>> In my MSYS2/Mingw64 shell, I get this:
levitte>>
levitte>>     [hidden email] MINGW64 ~
levitte>>     $ type perl
levitte>>     perl is hashed (/usr/bin/perl)
levitte>>    
levitte>>     [hidden email] MINGW64 ~
levitte>>     $ perl -v
levitte>>    
levitte>>     This is perl 5, version 22, subversion 1 (v5.22.1) built for i686-msys-thread-levitte>> multi-64int
levitte>>    
levitte>>     Copyright 1987-2015, Larry Wall
levitte>>    
levitte>>     Perl may be copied only under the terms of either the Artistic License or the
levitte>>     GNU General Public License, which may be found in the Perl 5 source kit.
levitte>>    
levitte>>     Complete documentation for Perl, including FAQ lists, should be found on
levitte>>     this system using "man perl" or "perldoc perl".  If you have access to the
levitte>>     Internet, point your browser at http://www.perl.org/, the Perl Home Page.
levitte>>    
levitte>>    
levitte>>     [hidden email] MINGW64 ~
levitte>>     $ perl -e 'print $^X,"\n";'
levitte>>     perl
levitte>>
levitte>> So the question is, what perl do you use?  From your output, I'd say
levitte>> it isn't the mingw64 one...
levitte>>
levitte>>  
levitte>>     SIXTY_FOUR_BIT mode
levitte>>    
levitte>>     Configured for mingw64.
levitte>>    
levitte>> Cheers,
levitte>> Richard




--
openssl-users mailing list
To unsubscribe: https://mta.openssl.org/mailman/listinfo/openssl-users
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: MinGW64 / MSYS2 and ./Configure : use of Windows style path causing failures to 'make'

Jeremy Farrell
What output do you get when you run the same commands as Richard? That is:

type perl

perl -v

perl -e 'print $^X,"\n";'


On 27/12/2016 20:05, Ron Gaw <ronmlgaw at yahoo dot com> via openssl-users wrote:
I wondered about that as well. 

First, regarding my msys64: The root '/' is mapped to "C:\msys64", and "/mingw64" is the directory where I keep all things MinGW64 w64.

Second: I do have multiple Perl's installed, though only one in the /mingw64 tree.  In essence, I *think* all the non-mingw64 per stuff I list below is irrelevant, but I'm not ruling those out as possible culprits in this issue...


So here's what I see (spoiler alert : nothing is jumping out at me as the culprit):

$ type /mingw64/bin/perl
/mingw64/bin/perl is /mingw64/bin/perl

$ /mingw64/bin/perl -v

This is perl 5, version 22, subversion 0 (v5.22.0) built for MSWin32-x64-multi-thread

Copyright 1987-2015, Larry Wall

Perl may be copied only under the terms of either the Artistic License or the
GNU General Public License, which may be found in the Perl 5 source kit.

Complete documentation for Perl, including FAQ lists, should be found on
this system using "man perl" or "perldoc perl".  If you have access to the
Internet, point your browser at http://www.perl.org/, the Perl Home Page.

$ pacman -Ss perl  /*--- NOTE: I cut out all the extraneous stuff and narrowed it to only what's [installed]

mingw64/mingw-w64-x86_64-perl 5.22.0-1 [installed]
    A highly capable, feature-rich programming language (mingw-w64)
msys/libpcre 8.38-1 (libraries) [installed]
    A library that implements Perl 5-style regular expressions
msys/libpcre16 8.38-1 (libraries) [installed]
    A library that implements Perl 5-style regular expressions
msys/libpcre32 8.38-1 (libraries) [installed]
    A library that implements Perl 5-style regular expressions
msys/libpcrecpp 8.38-1 (libraries) [installed]
    A library that implements Perl 5-style regular expressions
msys/libpcreposix 8.38-1 (libraries) [installed]
    A library that implements Perl 5-style regular expressions
msys/pcre 8.38-1 [installed]
    A library that implements Perl 5-style regular expressions
msys/perl 5.22.1-1 (base-devel) [installed]
    A highly capable, feature-rich programming language
msys/perl-Authen-SASL 2.16-2 (perl-modules) [installed]
    Perl/CPAN Module Authen::SASL : SASL authentication framework
msys/perl-Convert-BinHex 1.123-2 [installed]
    Perl module to extract data from Macintosh BinHex files
msys/perl-Encode-Locale 1.04-1 (perl-modules) [installed]
    Determine the locale encoding
msys/perl-File-Listing 6.04-2 (perl-modules) [installed]
    parse directory listing
msys/perl-HTML-Parser 3.71-3 (perl-modules) [installed]
    Perl HTML parser class
msys/perl-HTML-Tagset 3.20-2 (perl-modules) [installed]
    Data tables useful in parsing HTML
msys/perl-HTTP-Cookies 6.01-2 (perl-modules) [installed]
    HTTP cookie jars
msys/perl-HTTP-Daemon 6.01-2 (perl-modules) [installed]
    A simple http server class
msys/perl-HTTP-Date 6.02-2 (perl-modules) [installed]
    Date conversion routines
msys/perl-HTTP-Message 6.06-2 (perl-modules) [installed]
    HTTP style messages
msys/perl-HTTP-Negotiate 6.01-2 (perl-modules) [installed]
    choose a variant to serve
msys/perl-IO-Socket-SSL 2.016-1 (perl-modules) [installed]
    Nearly transparent SSL encapsulation for IO::Socket::INET
msys/perl-IO-stringy 2.111-1 (perl-modules) [installed]
    I/O on in-core objects like strings/arrays
msys/perl-LWP-MediaTypes 6.02-2 (perl-modules) [installed]
    Guess the media type of a file or a URL
msys/perl-MIME-tools 5.506-1 [installed]
    Parses streams to create MIME entities
msys/perl-MailTools 2.14-1 [installed]
    Various e-mail related modules
msys/perl-Module-Build 0.4212-1 [installed]
    Build, test, and install Perl modules
msys/perl-Net-HTTP 6.09-1 (perl-modules) [installed]
    Low-level HTTP connection (client)
msys/perl-Net-SMTP-SSL 1.02-1 (perl-modules) [installed]
    SSL support for Net::SMTP
msys/perl-Net-SSLeay 1.72-1 (perl-modules) [installed]
    Perl extension for using OpenSSL
msys/perl-TermReadKey 2.33-1 (perl-modules) [installed]
    Provides simple control over terminal driver modes
msys/perl-Test-Pod 1.50-1 (perl-modules) [installed]
    Check for POD errors in files
msys/perl-TimeDate 2.30-2 [installed]
    Date formating subroutines
msys/perl-URI 1.68-1 (perl-modules) [installed]
    Uniform Resource Identifiers (absolute and relative)
msys/perl-WWW-RobotRules 6.02-2 (perl-modules) [installed]
    Database of robots.txt-derived permissions
msys/perl-YAML-Syck 1.29-1 (perl-modules) [installed]
    Fast, lightweight YAML loader and dumper
msys/perl-libwww 6.13-1 (perl-modules) [installed]
    The World-Wide Web library for Perl



From: Richard Levitte [hidden email]



levitte>> The PERL definition is a bit odd for a mingw perl.  That path comes
levitte>> mingw64/mingw-w64-x86_64-perl 5.22.0-1 [installed]
levitte>>     A highly capable, feature-rich programming language (mingw-w64)
levitte>> from the perl variable $^X.
levitte>>
levitte>> In my MSYS2/Mingw64 shell, I get this:
levitte>>
levitte>>     [hidden email] MINGW64 ~
levitte>>     $ type perl
levitte>>     perl is hashed (/usr/bin/perl)
levitte>>    
levitte>>     [hidden email] MINGW64 ~
levitte>>     $ perl -v
levitte>>    
levitte>>     This is perl 5, version 22, subversion 1 (v5.22.1) built for i686-msys-thread-levitte>> multi-64int
levitte>>    
levitte>>     Copyright 1987-2015, Larry Wall
levitte>>    
levitte>>     Perl may be copied only under the terms of either the Artistic License or the
levitte>>     GNU General Public License, which may be found in the Perl 5 source kit.
levitte>>    
levitte>>     Complete documentation for Perl, including FAQ lists, should be found on
levitte>>     this system using "man perl" or "perldoc perl".  If you have access to the
levitte>>     Internet, point your browser at http://www.perl.org/, the Perl Home Page.
levitte>>    
levitte>>    
levitte>>     [hidden email] MINGW64 ~
levitte>>     $ perl -e 'print $^X,"\n";'
levitte>>     perl
levitte>>
levitte>> So the question is, what perl do you use?  From your output, I'd say
levitte>> it isn't the mingw64 one...
levitte>>
levitte>>  
levitte>>     SIXTY_FOUR_BIT mode
levitte>>    
levitte>>     Configured for mingw64.
levitte>>    
levitte>> Cheers,
levitte>> Richard






-- 
J. J. Farrell
Not speaking for Oracle

--
openssl-users mailing list
To unsubscribe: https://mta.openssl.org/mailman/listinfo/openssl-users
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: MinGW64 / MSYS2 and ./Configure : use of Windows style path causing failures to 'make'

OpenSSL - User mailing list
See below.



Jeremy Farrell>> What output do you get when you run the same commands as Richard? That is:
Jeremy Farrell>>
Jeremy Farrell>> type perl

$ type perl
perl is hashed (/mingw64/bin/perl)

Jeremy Farrell>>
Jeremy Farrell>> perl -v

$ perl -v

This is perl 5, version 22, subversion 0 (v5.22.0) built for MSWin32-x64-multi-thread

Copyright 1987-2015, Larry Wall

Perl may be copied only under the terms of either the Artistic License or the
GNU General Public License, which may be found in the Perl 5 source kit.

Complete documentation for Perl, including FAQ lists, should be found on
this system using "man perl" or "perldoc perl".  If you have access to the
Internet, point your browser at http://www.perl.org/, the Perl Home Page.

Jeremy Farrell>>
Jeremy Farrell>> perl -e 'print $^X,"\n";'

C:\msys64\mingw64\bin\perl.exe


--
openssl-users mailing list
To unsubscribe: https://mta.openssl.org/mailman/listinfo/openssl-users
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: MinGW64 / MSYS2 and ./Configure : use of Windows style path causing failures to 'make'

Jeremy Farrell
So you're not using the MSYS version of Perl - compare your output of 'perl -v' with that given by Richard. That's very likely your problem, as Matt Caswell pointed out in the stackoverflow thread referred to earlier.

On 28/12/2016 00:52, Ron Gaw <ronmlgaw at yahoo dot com> via openssl-users wrote:
See below.

Jeremy Farrell>> What output do you get when you run the same commands as Richard? That is:
Jeremy Farrell>>
Jeremy Farrell>> type perl

$ type perl
perl is hashed (/mingw64/bin/perl)

Jeremy Farrell>>
Jeremy Farrell>> perl -v

$ perl -v

This is perl 5, version 22, subversion 0 (v5.22.0) built for MSWin32-x64-multi-thread

Copyright 1987-2015, Larry Wall

Perl may be copied only under the terms of either the Artistic License or the
GNU General Public License, which may be found in the Perl 5 source kit.

Complete documentation for Perl, including FAQ lists, should be found on
this system using "man perl" or "perldoc perl".  If you have access to the
Internet, point your browser at http://www.perl.org/, the Perl Home Page.

Jeremy Farrell>>
Jeremy Farrell>> perl -e 'print $^X,"\n";'

C:\msys64\mingw64\bin\perl.exe

-- 
J. J. Farrell
Not speaking for Oracle

--
openssl-users mailing list
To unsubscribe: https://mta.openssl.org/mailman/listinfo/openssl-users
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: MinGW64 / MSYS2 and ./Configure : use of Windows style path causing failures to 'make'

Richard Levitte - VMS Whacker-2
In reply to this post by OpenSSL - User mailing list
In message <[hidden email]> on Tue, 27 Dec 2016 20:05:25 +0000 (UTC), "Ron Gaw <ronmlgaw at yahoo dot com>" <[hidden email]> said:

ronmlgaw> I wondered about that as well.
ronmlgaw>
ronmlgaw> First, regarding my msys64: The root '/' is mapped to "C:\msys64", and
ronmlgaw> "/mingw64" is the directory where I keep all things MinGW64 w64.
ronmlgaw>
ronmlgaw> Second: I do have multiple Perl's installed, though only one in the
ronmlgaw> /mingw64 tree. In essence, I *think* all the non-mingw64 per stuff I
ronmlgaw> list below is irrelevant, but I'm not ruling those out as possible
ronmlgaw> culprits in this issue...
ronmlgaw>
ronmlgaw> So here's what I see (spoiler alert : nothing is jumping out at me as
ronmlgaw> the culprit):
ronmlgaw>
ronmlgaw> $ type /mingw64/bin/perl
ronmlgaw> /mingw64/bin/perl is /mingw64/bin/perl

So here's one thing already that jumps out to me.  On mingw, perl is
usually installed in /usr/bin, not in /mingw64/bin (which is empty on
my installation).  Do you have /usr/bin/perl.exe on your installation
(you whould, considering pacman reports mingw64 perl to be installed)?

ronmlgaw> $ /mingw64/bin/perl -v
ronmlgaw>
ronmlgaw> This is perl 5, version 22, subversion 0 (v5.22.0) built for
ronmlgaw> MSWin32-x64-multi-thread

Here's the next thing that jumps at me.  'MSWin32' indicates to me
that it was built for use directly in MS cmd.exe or the like (where
backslashes make sense) rather than a Unix like shell such as bash
(where backslashes don't make sense).

So this all tells to me that your /mingw64/bin/perl.exe comes from
somewhere else, that you will probably find /usr/bin/perl.exe, and
that's the perl you should use.

Cheers,
Richard

--
Richard Levitte         [hidden email]
OpenSSL Project         http://www.openssl.org/~levitte/
--
openssl-users mailing list
To unsubscribe: https://mta.openssl.org/mailman/listinfo/openssl-users
Loading...