Skip to content

Commit

Permalink
sync
Browse files Browse the repository at this point in the history
  • Loading branch information
songdongsheng committed Apr 29, 2024
1 parent e72e030 commit 1ae9a33
Show file tree
Hide file tree
Showing 2 changed files with 34 additions and 38 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -26,48 +26,46 @@ If we link with the lowest version of the C Library, then we can achieve maximum

Linux distribution | Release date | GNU C Library |GCC support library| Linux Kernel
------------------------|---------------|---------------|-------------------|--------------
RHEL 5 | 2007-04 | 2.5 | | 2.6.18
Ubuntu 10.04 | 2010-04 | 2.11.1 | | 2.6.32
Debian 6 | 2011-02 | 2.11.3 | | 2.6.32
RHEL 6 | 2010-11 | 2.12 (**vsyscall=emulate**) | | 2.6.32
Debian 7 | 2013-05 | 2.13 (**vsyscall=emulate**) | | 3.2
Ubuntu 10.04 | 2010-04 | 2.11.1 | 4.4.3 | 2.6.32
Debian 6 | 2011-02 | 2.11.3 | 4.4.5 | 2.6.32
RHEL 6 | 2010-11 | 2.12 | 4.4.7 | 2.6.32
Debian 7 | 2013-05 | 2.13 | 4.7.2 | 3.2
Ubuntu 12.04 | 2012-04 | 2.15 | 4.6.3 | 3.2
**RHEL 7** | 2014-06 | **2.17** | 4.8.5 -> 12.1 | 3.10
**RHEL 7** | 2014-06 | **2.17** | 4.8.5 | 3.10
Ubuntu 14.04 | 2014-04 | 2.19 | 4.9.3 | 3.13
**SLE 12** | 2014-10 | 2.19 -> **2.22 (SP2)** | 4.8.3 -> 12.2 | [3.12 -> 4.12](https://www.suse.com/lifecycle/)
SLE 12 | 2014-10 | 2.19 -> 2.22 | 4.8.3 -> 13.2 | [3.12 -> 4.12](https://www.suse.com/lifecycle/)
Debian 8 | 2015-04 | 2.19 | 4.9.2 | 3.16
Ubuntu 16.04 | 2016-04 | 2.23 | 4.9.3 | 4.4
Debian 9 | 2017-06 | 2.24 | 6.3 | 4.9
**Amazon Linux 2 LTS** | 2018-06 | **2.26** | 7.3 -> 10.4 | 4.14
SLE 15 | 2018-07 | 2.26 -> 2.31 (SP3) | 7.3 -> 12.2 | [4.12 -> 5.14](https://www.suse.com/lifecycle/)
Ubuntu 18.04 | 2018-04 | 2.27 | 8.4 | 4.15
RHEL 8 | 2019-05 | 2.28 | 8.5 -> 12.1 | 4.18
Amazon Linux 2 LTS | 2018-06 | 2.26 | 7.3 | 4.14
SLE 15 | 2018-07 | 2.26 -> 2.31 | 7.3 -> 13.2 | [4.12 -> 5.14](https://www.suse.com/lifecycle/)
**Ubuntu 18.04** | 2018-04 | **2.27** | 8.4 | 4.15
RHEL 8 | 2019-05 | 2.28 | 8.5 | 4.18
Debian 10 | 2019-07 | 2.28 | 8.3 | 4.19
openEuler 20.03 | 2020-03 | 2.28 | 7.3 | 4.19
Ubuntu 20.04 | 2020-04 | 2.31 | 10.3 | 5.4
SLE 15 SP3 | 2021-06 | 2.31 | 10.2 | 5.3, 5.14 (SP4)
openSUSE Leap 15.4 | 2022-06 | 2.31 | 12.2 | 5.14
**Debian 11** | 2021-08 | **2.31** | 10.2 | 5.10
openEuler 22.03 | 2022-03 | 2.34 | 10.3 -> 12.2 | 5.10
**RHEL 9** | 2022-05 | **2.34** | 11.3 -> 12.1 | 5.14
Amazon Linux 2023 | 2023-03 | 2.34 | 11.3 | 6.1
openEuler 22.03 | 2022-03 | 2.34 | 10.3 | 5.10
**RHEL 9** | 2022-05 | **2.34** | 11.4 | 5.14
Amazon Linux 2023 | 2023-03 | 2.34 | 11.4 | 6.1
CBL-Mariner 2.0 | 2022-05 | 2.35 | 11.2 | 5.15
Ubuntu 22.04 | 2022-04 | 2.35 | 12.1 | 5.15
Fedora 37 | 2022-11 | 2.36 | 12.2 | 6.0
Debian 12 | ***2023-06*** | [2.36](https://tracker.debian.org/pkg/glibc) | [12.2](https://packages.debian.org/bookworm/libgcc-s1) | [6.1](https://tracker.debian.org/pkg/linux)
[SUSE Adaptable Linux Platform (ALP)](https://download.opensuse.org/repositories/SUSE:/ALP/) | ***2023-10*** | 2.36 | 12.2 | [6.1](https://download.opensuse.org/repositories/SUSE:/ALP/standard/x86_64/)
Fedora 38 | 2023-04 | 2.37 | 13.0 | 6.2
[**openSUSE Tumbleweed**](https://download.opensuse.org/tumbleweed/repo/oss/x86_64/) | ***Rolling*** | 2.37 | 13.0 | 6.3
Alpine 3.15 | [2021-11](https://alpinelinux.org/releases/) | musl [1.2.2](https://gitlab.alpinelinux.org/alpine/aports/-/blob/3.15-stable/main/musl/APKBUILD) | [libgcc 10.3](https://gitlab.alpinelinux.org/alpine/aports/-/blob/3.15-stable/main/gcc/APKBUILD) | [5.15](https://gitlab.alpinelinux.org/alpine/aports/-/blob/3.15-stable/main/linux-lts/APKBUILD)
Alpine 3.16 | [2022-05](https://alpinelinux.org/releases/) | musl [1.2.3](https://gitlab.alpinelinux.org/alpine/aports/-/blob/3.16-stable/main/musl/APKBUILD) | [libgcc 11.2](https://gitlab.alpinelinux.org/alpine/aports/-/blob/3.16-stable/main/gcc/APKBUILD) | [5.15](https://gitlab.alpinelinux.org/alpine/aports/-/blob/3.16-stable/main/linux-lts/APKBUILD)
Debian 12 | 2023-06 | [2.36](https://tracker.debian.org/pkg/glibc) | [12.2](https://packages.debian.org/bookworm/libgcc-s1) | [6.1](https://tracker.debian.org/pkg/linux)
Fedora 39 | 2023-11 | 2.38 | 13.2 | 6.6
[SUSE Adaptable Linux Platform (ALP)](https://download.opensuse.org/repositories/SUSE:/ALP/) | ***2024-10*** | 2.37 ? | 13.2 ? | [6.6 ?](https://download.opensuse.org/repositories/SUSE:/ALP/standard/x86_64/)
Debian 13 | ***2025-06*** | [2.41 ?](https://tracker.debian.org/pkg/glibc) | [15.2 ?](https://packages.debian.org/trixie/libgcc-s1) | [6.12 ?](https://tracker.debian.org/pkg/linux)
[**openSUSE Tumbleweed**](https://download.opensuse.org/tumbleweed/repo/oss/x86_64/) | ***Rolling*** | 2.38 | 13.2 | 6.6
Alpine 3.17 | [2022-11](https://alpinelinux.org/releases/) | musl [1.2.3](https://gitlab.alpinelinux.org/alpine/aports/-/blob/3.17-stable/main/musl/APKBUILD) | [libgcc 12.2](https://gitlab.alpinelinux.org/alpine/aports/-/blob/3.17-stable/main/gcc/APKBUILD) | [5.15](https://gitlab.alpinelinux.org/alpine/aports/-/blob/3.17-stable/main/linux-lts/APKBUILD)
Alpine 3.18 | [2023-05](https://alpinelinux.org/releases/) | musl [1.2.4](https://gitlab.alpinelinux.org/alpine/aports/-/blob/3.18-stable/main/musl/APKBUILD) | [libgcc 12.2](https://gitlab.alpinelinux.org/alpine/aports/-/blob/3.18-stable/main/gcc/APKBUILD) | [6.1](https://gitlab.alpinelinux.org/alpine/aports/-/blob/3.18-stable/main/linux-lts/APKBUILD)
Alpine 3.19 | [***2023-11***](https://alpinelinux.org/releases/) | musl [1.2.4](https://gitlab.alpinelinux.org/alpine/aports/-/blob/master/main/musl/APKBUILD) | [libgcc 13.1](https://gitlab.alpinelinux.org/alpine/aports/-/blob/master/main/gcc/APKBUILD) | [6.1](https://gitlab.alpinelinux.org/alpine/aports/-/blob/master/main/linux-lts/APKBUILD)
Alpine 3.19 | [2023-12](https://alpinelinux.org/releases/) | musl [1.2.4](https://gitlab.alpinelinux.org/alpine/aports/-/blob/3.19-stable/main/musl/APKBUILD) | [libgcc 13.2](https://gitlab.alpinelinux.org/alpine/aports/-/blob/3.19-stable/main/gcc/APKBUILD) | [6.6](https://gitlab.alpinelinux.org/alpine/aports/-/blob/3.19-stable/main/linux-lts/APKBUILD)
Alpine 3.20 | [***2024-05***](https://alpinelinux.org/releases/) | musl [1.2.5](https://gitlab.alpinelinux.org/alpine/aports/-/blob/master/main/musl/APKBUILD) | [libgcc 13.2](https://gitlab.alpinelinux.org/alpine/aports/-/blob/master/main/gcc/APKBUILD) | [6.6](https://gitlab.alpinelinux.org/alpine/aports/-/blob/master/main/linux-lts/APKBUILD)

## libgcc versions

The following GCC versions add new functions to **libgcc** ([`libgcc/libgcc-std.ver.in`](https://gcc.gnu.org/git/?p=gcc.git;a=blob;f=libgcc/libgcc-std.ver.in;hb=HEAD) and [`libgcc/config/i386/libgcc-glibc.ver`](https://gcc.gnu.org/git/?p=gcc.git;a=blob;f=libgcc/config/i386/libgcc-glibc.ver;hb=HEAD)):

+ **GCC 14.0.0**
+ **GCC 13.0.0**
+ **GCC 12.0.0**
+ **GCC 7.0.0**
Expand Down
28 changes: 13 additions & 15 deletions source/_posts/2022/Q4/2022-11-06-compiling-kernel-for-wsl2.md
Original file line number Diff line number Diff line change
Expand Up @@ -29,7 +29,7 @@ sudo podman run --rm -it --pull always -h debian-testing \
-w /root -v $(pwd):/xyz \
-e "PATH=/usr/sbin:/usr/bin:/sbin:/bin" \
-e NO_PROXY="localhost,::1/128,f000::/4,127.0.0.0/8,10.0.0.0/8,172.16.0.0/12,192.168.0.0/16" \
docker.io/library/debian:testing
public.ecr.aws/docker/library/debian:stable

echo "precedence ::ffff:0:0/96 100" >> /etc/gai.conf; \
apt-get update && apt-get dist-upgrade -y && \
Expand Down Expand Up @@ -60,8 +60,8 @@ linux-msft-wsl-6.1.21.1
### Use Stable Linux Kernel

```bash
rm -fr ~/Linux-6.2/Microsoft && mkdir -p $_ && cd $_/..
curl -sSL https://cdn.kernel.org/pub/linux/kernel/v6.x/linux-6.3.2.tar.xz | tar --strip-components=1 -xJ -f -
rm -fr ~/Linux-6.6/Microsoft && mkdir -p $_ && cd $_/..
curl -sSL https://cdn.kernel.org/pub/linux/kernel/v6.x/linux-6.6.16.tar.xz | tar --strip-components=1 -xJ -f -
curl -sSL -o Microsoft/config-wsl https://raw.githubusercontent.com/microsoft/WSL2-Linux-Kernel/linux-msft-wsl-6.1.y/arch/x86/configs/config-wsl

# du -ms
Expand Down Expand Up @@ -113,6 +113,7 @@ CONFIG_BLK_DEV_UBLK=y
# File systems/Network File Systems
CONFIG_NFS_V4_2=y
CONFIG_NFS_V4_2_READ_PLUS=y
CONFIG_NFS_DISABLE_UDP_SUPPORT=y
EOF
```

Expand Down Expand Up @@ -157,19 +158,18 @@ time make KCONFIG_CONFIG=Microsoft/config-wsl -j8 tarxz-pkg
...
Kernel: arch/x86/boot/bzImage is ready (#1)

real 11m43.670s
user 86m58.481s
sys 7m57.750s
real 19m57.919s
user 142m41.987s
sys 12m48.108s

# du -ms .
4763 .
4467 .

# du -ks arch/x86/boot/bzImage
12768 arch/x86/boot/bzImage
13128 arch/x86/boot/bzImage

# cp arch/x86/boot/bzImage ~/vmlinuz-6.3.2-WSL2
# cp arch/x86/boot/bzImage /mnt/c/Users/<seuUser>/vmlinuz-6.3.2-WSL2
# cp Microsoft/config-wsl /mnt/c/Users/<seuUser>/vmlinuz-6.3.2-WSL2.config
# cp arch/x86/boot/bzImage /mnt/c/Users/<seuUser>/vmlinuz-6.6.16-WSL2
# cp Microsoft/config-wsl /mnt/c/Users/<seuUser>/vmlinuz-6.6.16-WSL2.config
# vi /mnt/c/Users/<seuUser>/.wslconfig

time make KCONFIG_CONFIG=Microsoft/config-wsl -j8 modules
Expand All @@ -184,8 +184,7 @@ time make KCONFIG_CONFIG=Microsoft/config-wsl -j8 tarxz-pkg
[wsl2]
# An absolute Windows path to a custom Linux kernel
# kernel=C:\\Users\\<seuUser>\\vmlinuz-6.1.21.1-WSL2-msft
# kernel=C:\\Users\\<seuUser>\\vmlinuz-6.2.11-WSL2
# kernel=C:\\Users\\<seuUser>\\vmlinuz-6.3.2-WSL2
# kernel=C:\\Users\\<seuUser>\\vmlinuz-6.6.16-WSL2
# 50% of total memory on Windows or 8GB, whichever is less
# memory=8GB
# Sets additional kernel parameters, in this case enabling older Linux base images such as Centos 6
Expand Down Expand Up @@ -215,6 +214,5 @@ Linux version 6.1.21.1-microsoft-standard-WSL2+ (root@debian-testing) (gcc (Debi
```bash
# cat /proc/version
Linux version 6.2.11-microsoft-standard-WSL2 (root@debian-testing) (gcc (Debian 12.2.0-14) 12.2.0, GNU ld (GNU Binutils for Debian) 2.40) #1 SMP PREEMPT_DYNAMIC Fri Apr 14 14:53:28 UTC 2023
Linux version 6.3.2-microsoft-standard-WSL2 (root@debian-testing) (gcc (Debian 12.2.0-14) 12.2.0, GNU ld (GNU Binutils for Debian) 2.40) #1 SMP PREEMPT_DYNAMIC Mon May 15 04:22:52 UTC 2023
Linux version 6.6.16-microsoft-standard-WSL2 (root@wsl2-debian) (gcc (Debian 13.2.0-13) 13.2.0, GNU ld (GNU Binutils for Debian) 2.42) #1 SMP PREEMPT_DYNAMIC Tue Feb 6 23:22:24 CST 2024
```

0 comments on commit 1ae9a33

Please sign in to comment.