-
Notifications
You must be signed in to change notification settings - Fork 48
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
Problem on startup of 5.40.0.1-PDL build #200
Comments
Thanks Rob. It looks like the change in 6def322 does not work. Changing L45 to this gets it to work.
|
Oh, yes. |
I've uploaded new versions with that line amended. The reason for the change is in #196 |
I had seen #196, but it doesn't really explain (to me, at least) the need for the change. I can only think that the difference comes back to that perl command (on the previous line of portableshell.bat) being handled differently by perl-5.38.2 and perl-5.40.0. I'll close this now, as the immediate issue is fixed. But I'll strive to get a better understanding of what is happening here ... and update this thread if I'm successful. |
Reopening because I now think the "fix" of replacing Changing the one-liner to:
(as suggested at https://www.perlmonks.org/?node_id=11160849) fixes the problem for me - without (I think) any need to alter the following line (line 45). That perlmonks thread also presents the notion that the change in behaviour arises from a change in underlying C library, which also seems reasonable. UPDATE: It's apparently the white space between the 2 triplets of double-quotes that stuffs things up:
SP-5.40.0-RC1 avoided the issue by using |
Even so, the command needs to use I think I'll also revert the error level check. The old style seems to work well enough now I have tested it more thoroughly. |
FWIW (probably not much) you can actually emit the same output from portableshell.bat using print() instead of printf() - thereby avoiding the printf formatting completely:
Maybe that doesn't have the desired effect on ERRORLEVEL if something is missing. (I don't know.) UPDATE: Duh ... not quite the same as perl version appears as "v5.40.0" instead of "5.40.0". |
Thanks Rob. A plain I don't see issues with printing versions with the leading |
5.40.0.1 has the changes discussed in this issue. I'll close this once that is promoted to the latest release. Edit: link is https://github.com/StrawberryPerl/Perl-Dist-Strawberry/releases/tag/SP_54001_64bit_UCRT |
SP 5.40.0.1 is now the latest release so I'll close this. Thanks again @sisyphus for the report and discussion. |
On my Windows 11 machine, the execution of 5.40.0.1-PDL's portableshell.bat culminates with:
However, perl itself seems to be basically fine.
It seems that 5.38.2.2-PDL and 5.40.0.1-PDL are handling the command
perl -MConfig -MPDL -e "printf("""Perl executable: %%s\nPerl version : %%vd / $Config{archname}\nPDL version : %%s\n\n""", $^X, $^V, $PDL::VERSION)"
a little differently.On 5.38.2.2-PDL:
On 5.40.0.1-PDL:
After spending more time than I'm prepared to admit, I still haven't got to the bottom of it.
I'll keep poking at it, but someone else might pinpoint the problem quicker than I can.
The text was updated successfully, but these errors were encountered: