Các phiên bản glibc mới có thể được sử dụng với một kernel cũ không?


18

Rõ ràng glibc có thể được biên dịch --enable-kernelđể hỗ trợ các phiên bản kernel cũ hơn. Tuy nhiên, tôi không thể tìm thấy thông tin về những phiên bản kernel nào được hỗ trợ trên một phiên bản glibc cụ thể . Lý tưởng nhất, tôi muốn xem một ma trận tương thích cho mỗi bản phát hành glibc (2.x) và kernel (2.6.x). Nó tồn tại?

Nếu nó không tồn tại, có lẽ bởi vì mọi phiên bản glibc (trong 5 năm gần đây) đều hỗ trợ tất cả các hạt nhân kể từ 2.6.0?

(Arch = x86-64, nếu vấn đề đó)

Câu trả lời:


7

Đối với một số phiên bản glibc, email thông báo cho biết phiên bản kernel nào tương thích.

glibc    Released      Kernel
----------------------------------------------------------

2.27     2 Feb 2018    (same as 2.26?)
2.26     2 Aug 2017    3.2
2.25     5 Feb 2017    (same as 2.24?)

2.24     4 Aug 2016    on i[4567]86 and x86_64  ->  2.6.32
2.24     4 Aug 2016    on other platforms       ->  3.2

Có thể mở rộng bảng trên bằng cách theo dõi và đọc thêm các email thông báo cho các phiên bản cũ hơn (hoặc mới hơn) glibc.

Để tham khảo:

Linux distribution    glibc version

Debian 9 Stretch      2.24
Debian 10 Buster      2.27 (as of March 2018).

Ubuntu 16.04          2.23
Ubuntu 16.10          2.24
Ubuntu 17.04          2.24
Ubuntu 17.10          2.26
Ubuntu 18.04          2.27

Nguồn:
Thư viện GNU C (glibc)
Thư viện GNU C phiên bản 2.27 hiện có sẵn
Thư viện GNU C phiên bản 2.26 hiện có sẵn
Thư viện GNU C phiên bản 2.25 hiện có sẵn
Thư viện GNU C phiên bản 2.24 hiện có sẵn
DistroWatch.com: Ubuntu



4

Theo README của dự án, bạn có thể sử dụng glibc với 2,4 nhân, nhưng bạn sẽ mất một số chức năng:

Khi làm việc với các nhân Linux, Thư viện GNU C phiên bản 2.4 chủ yếu được sử dụng cho nhân Linux phiên bản 2.6.0 trở lên. Chúng tôi chỉ hỗ trợ sử dụng triển khai NPTL của pthreads, hiện là cấu hình mặc định. Hầu hết thư viện C sẽ tiếp tục hoạt động trên các nhân Linux cũ hơn và nhiều chương trình sẽ không yêu cầu kernel 2.6 để chạy chính xác. Tuy nhiên, pthread và chức năng liên quan hoàn toàn không hoạt động trên các nhân cũ và chúng tôi không khuyên bạn nên sử dụng glibc 2.4 với bất kỳ nhân Linux nào trước 2.6.

Lưu ý rằng --enable-kernel=VERSIONcó nghĩa là:

biên dịch để tương thích với kernel không cũ hơn VERSION

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.