[release/9.0-rc1] Include libz.a in native aot packages #106673
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Backport of #106569 to release/9.0-rc1
/cc @jkotas
Customer Impact
Fixes #106566
A customer reported that when trying to run an AOT application compiled for ARM64 with Preview7, an error shows up saying that libz.so could not be loaded. This was because our in-tree copy of zlib-ng was incorrectly loaded as a shared library rather than a statically linked one.
The runtime error is:
And occurs when the project uses these properties:
Regression
This was introduced in P7.
Testing
Manual and also executing various azp run CI legs.
Risk
Low. This affects the few cases where zlib is included as a shared library and now will be included as a statically linked library, which we already know works for all other cases.
IMPORTANT: If this backport is for a servicing release, please verify that:
The PR target branch is
release/X.0-staging
, notrelease/X.0
.If the change touches code that ships in a NuGet package, you have added the necessary package authoring and gotten it explicitly reviewed.