Skip to content

workaround zlib 1.3.2 library naming change on Windows#512

Open
GhostPirateBob wants to merge 1 commit intophp:1.4.xfrom
GhostPirateBob:1.4.x-workflow-fix
Open

workaround zlib 1.3.2 library naming change on Windows#512
GhostPirateBob wants to merge 1 commit intophp:1.4.xfrom
GhostPirateBob:1.4.x-workflow-fix

Conversation

@GhostPirateBob
Copy link

@GhostPirateBob GhostPirateBob commented Feb 19, 2026

Fixes #514

This is a bit messy but see the issue for the rationale. I'm hoping this is just a temporary workaround and you can get rid of it after other fixes upstream.

Upstream issue filed: crazywhalecc/static-php-cli#1039

zlib 1.3.2 changed its cmake output file names on Windows:

  • zlibstatic.lib -> zs.lib
  • zlib.lib -> z.lib
  • zlib.dll -> z.dll

SPC's zlib builder expects the old names, and PHP's configure looks for zlib_a.lib or zlib.lib. With neither present, zlib is silently excluded and the link step fails with 12 unresolved zlib symbols from curl, openssl, and libssh2.

This adds a conditional workaround that renames the files and re-runs configure + nmake when the issue is detected. It can be removed once static-php-cli updates their zlib builder.

Cheers!

gpb
✌(◕‿-)✌

zlib 1.3.2 changed its cmake output file names on Windows:
- zlibstatic.lib -> zs.lib
- zlib.lib -> z.lib
- zlib.dll -> z.dll

SPC's zlib builder expects the old names, and PHP's configure
looks for zlib_a.lib or zlib.lib. With neither present, zlib
is silently excluded and the link step fails with 12 unresolved
zlib symbols from curl, openssl, and libssh2.

This adds a conditional workaround that renames the files and
re-runs configure + nmake when the issue is detected. It can be
removed once static-php-cli updates their zlib builder.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Windows CI binary build fails due to zlib 1.3.2 library naming change

1 participant

Comments