Skip to content

PowerShell 7.6.0-preview.6 requires glibc 2.33 which is not present in RHEL 8 #26704

@yodasad

Description

@yodasad

Prerequisites

Steps to reproduce

The PowerShell documentation states that

Microsoft supports PowerShell until PowerShell reaches end-of-support or the version of RHEL reaches end-of-support.

RHEL 8 is supported until 2029-05-31 and ships with glibc 2.28 and pwsh 7.6.0 requires at least 2.33.

RHEL 8 is supported by .NET 10.

Trying to start pwsh on RHEL 8 results in the error:

version `GLIBC_2.33' not found (required by /opt/microsoft/powershell/7/libpsl-native.so.

The original problem was discovered on Debian 11, though it is not officially supported .NET itself works on Debian 11, but PowerShell does not due to the same dependency on glibc 2.33.

Expected behavior

`pwsh` starts correctly.

Actual behavior

Unhandled exception. System.TypeInitializationException: The type initializer for 'System.Management.Automation.Tracing.PSEtwLog' threw an exception.
 ---> System.TypeInitializationException: The type initializer for 'System.Management.Automation.Tracing.PSSysLogProvider' threw an exception.
 ---> System.DllNotFoundException: Unable to load shared library 'libpsl-native' or one of its dependencies. In order to help diagnose loading problems, consider using a tool like strace. If you're using glibc, consider setting the LD_DEBUG environment variable:
/lib/x86_64-linux-gnu/libc.so.6: version `GLIBC_2.33' not found (required by /opt/microsoft/powershell/7/libpsl-native.so)
libpsl-native.so: cannot open shared object file: No such file or directory
/opt/microsoft/powershell/7/liblibpsl-native.so: cannot open shared object file: No such file or directory
/opt/microsoft/powershell/7/libpsl-native: cannot open shared object file: No such file or directory
/opt/microsoft/powershell/7/liblibpsl-native: cannot open shared object file: No such file or directory

   at System.Management.Automation.Tracing.SysLogProvider..ctor(String applicationId, PSLevel level, PSKeyword keywords, PSChannel channels)
   at System.Management.Automation.Tracing.PSSysLogProvider..cctor()
   --- End of inner exception stack trace ---
   at System.Management.Automation.Tracing.PSEtwLog..cctor()
   --- End of inner exception stack trace ---
   at System.Management.Automation.Tracing.PSEtwLog.LogConsoleStartup()
   at Microsoft.PowerShell.UnmanagedPSEntry.Start(String[] args, Int32 argc)
   at Microsoft.PowerShell.ManagedPSEntry.Main(String[] args)
Aborted

Error details

`pwsh` process is aborted, so it is impossible to call the `Get-Error` cmdlet.

Environment data

cp@dss-debian11-test:~/distr$ ldd --version

ldd (Debian GLIBC 2.31-13+deb11u13) 2.31
Copyright (C) 2020 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
Written by Roland McGrath and Ulrich Drepper.

Visuals

No response

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions