Edit report at https://bugs.php.net/bug.php?id=74398&edit=1
ID: 74398
User updated by: acuna dot personal at gmail dot com
Reported by: acuna dot personal at gmail dot com
Summary: PHP compiles good with --with-openssl, but nmake
snap returns a fatal error
Status: Closed
Type: Bug
Package: OpenSSL related
Operating System: Windows 10.1 x64
PHP Version: 7.2.0-dev
Assigned To: ab
Block user comment: N
Private report: N
New Comment:
Thanks a lot for your answer and specially for pickle, because now I'm porting some of my
ancient extensions to the PHP7 and I'm compelled to compile the PHP ten times a day, so I hope
it'll help (is it?).
Previous Comments:
------------------------------------------------------------------------
[2017-04-24 15:41:20] ab@php.net
On the wiki, it's about latest <b>stable</b>. Anyway, --with-extname can now be
forced shared by default in 7.0, see f7b8322b144122baddaf365c37dca3b8e547725e and please check.
The --enable-one-shot option appears to be dead. Seems it were implemented long ago for some older
VS compilers, today it has absolutely no implementation. For that, --with-mp is enabled by default
with the snapshot build, otherwise you have to pass it manually, see configure --help for details.
I'm going to remove --enable-one-shot in master, as it has already no effect since long.
For custom extensions, I'd recommend the dev SDK and in addition maybe also https://github.com/FriendsOfPHP/pickle . But even
the dev alone is a good choice for a faster build.
Thanks.
------------------------------------------------------------------------
[2017-04-16 22:26:04] acuna dot personal at gmail dot com
Hello!
Well, yes, I understand this, but I thought that binary tools must be actually with the PHP version,
otherwise it'll birth more problems than solves it. And finally, it's recommends for
download with GitHub at the latest version of manual, which you've gave to me. But okay, will
try to use 2.0.0, no problems)
Well, I afraid it's not static by default (when not to put the "shared" value
forcibly I mean). It was necessary for me only to use the --with-openssl=shared forcibly to compile
it shared.
Thanks for advice with --enable-snapshot-build, I read about it. But can I ask you about its value
more deeply? What is phrase "turns on everything it can" means? Is it means that its
builds it with all extensions embed by default?
Thanks a lot!
P. S. If we talk about options - what is --enable-one-shot key really means too, especially
"not so hot for edit-and-rebuild hacking" phrase? I don't want to create a new bug
report with the template "<key> working but ignoring", but I tried it to use it for
the more quickly builds because I need to test my own extensions etc, but it seems that it's
not working on latest PHP versions, because on 7.1.3 it build tooks less than 20 secs, but at the
7.2.0-dev it take more than 5 minutes with the same configs.
------------------------------------------------------------------------
[2017-04-14 22:50:02] ab@php.net
Yeah, you told latest binary tools from github, but it's actually versioned, so there can be
certain difference. That's why i asked to be precise and there's more on report process
here https://bugs.php.net/how-to-report.php ;)
Be aware about the compatibility notes https://wiki.php.net/internals/windows/stepbystepbuild_sdk_2,
likely it'll work as expected but please use the stable tag, 2.0.0 currently.
ext/openssl is already shared by default, except an explicit option is given. Depending on what you
need, simplest were to --enable-snapshot-build, except you'd need some highly customized build.
Probably we indeed could disable static building of ext/openssl, need to evaluate the consequences.
In general, custom builds should not be prohibited.
Thanks.
------------------------------------------------------------------------
[2017-04-14 19:57:48] acuna dot personal at gmail dot com
Ah, and yes, seems that I forgot to tell you which binary I've use (but I'm sure that
I've done it) - it's the latest one from GitHub, I've dovnloaded it time after time
I've build my own PHP so far.
------------------------------------------------------------------------
[2017-04-14 19:54:21] acuna dot personal at gmail dot com
Wow! Seems it working now when I try to build it shared. I've no need to get DLLs separated
when I compile it statically, so I didn't do it. But I think you should make it forcibly shared
like opcache, gd, etc, or, if it impossible for some reasons, at least make an announcement in
manual that it must be only compiled shared, because I've spent more than three days to find a
reason in my broken sources as I think, because I believed that it can't be so fail bug with
OpenSSL which is idle in fact.
------------------------------------------------------------------------
The remainder of the comments for this report are too long. To view
the rest of the comments, please view the bug report online at
https://bugs.php.net/bug.php?id=74398
--
Edit this bug report at https://bugs.php.net/bug.php?id=74398&edit=1