Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Wrong perl version? #9048

Closed
Martmists-GH opened this issue May 30, 2019 · 8 comments
Closed

Wrong perl version? #9048

Martmists-GH opened this issue May 30, 2019 · 8 comments
Labels
resolved: answered The issue contained a question which has been answered triaged: question The issue contains a question

Comments

@Martmists-GH
Copy link

Windows 10 x64, tried powershell and git bash

$ perl ./Configure VC-WIN64A no-asm
Configuring OpenSSL version 3.0.0-dev for target VC-WIN64A
Using os-specific seed configuration

******************************************************************************
This perl implementation doesn't produce Windows like paths (with backward
slash directory separators).  Please use an implementation that matches your
building platform.

This Perl version: 5.26.2 for x86_64-msys-thread-multi
******************************************************************************

This perl version has worked fine for a long time. Additionally, forward slashes continue to work on Windows, so I really don't see why this would be an issue.

@mattcaswell
Copy link
Member

This is the msys version of perl which works fine with OpenSSL when running from an msys shell and configured to build mingw. To run the VC-WIN64A you will need a "native" windows version of perl such as Strawberry or ActiveState. There are minor differences between the various perl implementations and getting all of them to play nicely with all combinations of shell proved to be too difficult. See the "Notes on Perl on Windows" section here:

https://github.com/openssl/openssl/blob/master/NOTES.PERL

@mattcaswell mattcaswell added resolved: answered The issue contained a question which has been answered triaged: question The issue contains a question labels Nov 19, 2019
@mattcaswell
Copy link
Member

This question seems to have been answered. Closing.

@germain-gg
Copy link

The link above is not working anymore, the documentation has been moved to https://github.com/openssl/openssl/blob/master/NOTES-PERL.md#perl-on-windows

@jszwedko
Copy link

I ran into this today running Strawberry Perl which seems like it should be compatible?

PS C:\Users\Administrator\vector> perl --version

This is perl 5, version 32, subversion 1 (v5.32.1) built for MSWin32-x64-multi-thread

Copyright 1987-2021, 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.

PS C:\Users\Administrator\vector> Get-Command perl

CommandType     Name                                               Version    Source
-----------     ----                                               -------    ------
Application     perl.exe                                           5.32.1.1   C:\Strawberry\perl\bin\perl.exe

This was when building from Rust via the openssl-sys crate:

Caused by:
  process didn't exit successfully: `C:\Users\Administrator\vector\target\debug\build\openssl-sys-93463217a9b5333d\build-script-main` (exit code: 101)
  --- stdout
  cargo:rustc-cfg=const_fn
  cargo:rerun-if-env-changed=X86_64_PC_WINDOWS_MSVC_OPENSSL_NO_VENDOR
  X86_64_PC_WINDOWS_MSVC_OPENSSL_NO_VENDOR unset
  cargo:rerun-if-env-changed=OPENSSL_NO_VENDOR
  OPENSSL_NO_VENDOR unset
  running "perl" "./Configure" "--prefix=C:\\Users\\Administrator\\vector\\target\\debug\\build\\openssl-sys-e50dc067edc239f5\\out\\openssl-build\\install" "no-dso" "no-shared" "no-ssl3" "no-unit-test" "no-comp" "no-zlib" "no-zlib-dynamic" "no-md2" "no-rc5" "no-weak-ssl-ciphers" "no-camellia" "no-idea" "no-seed" "no-engine" "no-asm" "VC-WIN64A"
  Configuring OpenSSL version 1.1.1l (0x101010cfL) for VC-WIN64A
  Using os-specific seed configuration

  --- stderr

  ******************************************************************************
  This perl implementation doesn't produce Windows like paths (with backward
  slash directory separators).  Please use an implementation that matches your
  building platform.

  This Perl version: 5.34.0 for x86_64-msys-thread-multi
  ******************************************************************************
  thread 'main' panicked at '


  Error configuring OpenSSL build:
      Command: "perl" "./Configure" "--prefix=C:\\Users\\Administrator\\vector\\target\\debug\\build\\openssl-sys-e50dc067edc239f5\\out\\openssl-build\\install" "no-dso" "no-shared" "no-ssl3" "no-unit-test" "no-comp" "no-zlib" "no-zlib-dynamic" "no-md2" "no-rc5" "no-weak-ssl-ciphers" "no-camellia" "no-idea" "no-seed" "no-engine" "no-asm" "VC-WIN64A"
      Exit status: exit code: 127


      ', C:\Users\Administrator\.cargo\registry\src\github.com-1ecc6299db9ec823\openssl-src-111.16.0+1.1.1l\src\lib.rs:479:13
  note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace
warning: build failed, waiting for other jobs to finish...
error: build failed
make: *** [Makefile:288: test] Error 101

@jszwedko
Copy link

Never mind, somehow make was picking up a different version of Perl than my shell was.

@Sytten
Copy link

Sytten commented Sep 27, 2022

How did you fix the issue @jszwedko we have the same problem with openssl-sys when building on windows using github actions.

@jszwedko
Copy link

jszwedko commented Oct 4, 2022

How did you fix the issue @jszwedko we have the same problem with openssl-sys when building on windows using github actions.

Hey! Unfortunately I can't remember now 😅 Sorry I can't be of more help. I should have noted how I fixed it at the time I left the other comment.

@totszwai
Copy link

Not sure if this would help anybody, but for me, I was trying to compile openssl under a MSYS2 UCRT shell and I had the mingw-w64-ucrt-x86_64-perl package installed. So it was using the wrong perl.

$ which perl
/ucrt64/bin/perl
$ perl --version

This is perl 5, version 32, subversion 1 (v5.32.1) built for **MSWin32-x64-multi-thread**

After removing the wrong perl, I could compile openssl fine again.

pacman -Rcns mingw-w64-ucrt-x86_64-perl

$ which perl
/usr/bin/perl
$ /usr/bin/perl -v

This is perl 5, version 38, subversion 2 (v5.38.2) built for x86_64-msys-thread-multi

HTH

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
resolved: answered The issue contained a question which has been answered triaged: question The issue contains a question
Projects
None yet
Development

No branches or pull requests

6 participants