Điểm:3

Làm cách nào để nâng cấp libc6 (glibc) ngoài phiên bản 2.31 trên Ubuntu 20.04?

lá cờ jp

Tôi đang sử dụng công cụ cờ vua Stockfish trong một số GUI, nhưng hôm qua nó đã ngừng hoạt động. Tôi đã không thay đổi công cụ cũng như giao diện, nhưng khi tôi cố chạy công cụ thì nó "kết thúc bằng mã...", nhưng nó không xuất ra bất kỳ mã nào. Điều duy nhất có thể thay đổi là tôi thường xuyên nâng cấp các gói của mình: sudo apt update && sudo apt dist-upgrade, và tôi đoán điều đó hẳn đã phá vỡ nó. Tôi đã cài đặt Phiên bản Stockfish mới nhất và chạy nó trong dòng lệnh, và đầu ra mà nó mang lại là:

./stockfish_21112912_x64_avx2: /lib/x86_64-linux-gnu/libc.so.6: không tìm thấy phiên bản `GLIBC_2.32' (do ./stockfish_21112912_x64_avx2 yêu cầu)
./stockfish_21112912_x64_avx2: /lib/x86_64-linux-gnu/libc.so.6: không tìm thấy phiên bản `GLIBC_2.33' (do ./stockfish_21112912_x64_avx2 yêu cầu)
./stockfish_21112912_x64_avx2: /lib/x86_64-linux-gnu/libc.so.6: không tìm thấy phiên bản `GLIBC_2.34' (do ./stockfish_21112912_x64_avx2 yêu cầu)

Vì vậy, tôi muốn nâng cấp GLIBC và tôi đã tìm thấy chủ đề này: [https://askubuntu.com/questions/736208/upgrading-glibc]: "Glibc (hay còn được gọi là Thư viện GNU C) có một nhánh rẽ cho linux được gọi là libc6. Libc6 có sẵn qua apt." Tôi chạy: chính sách apt-cache libc6, đã cho đầu ra:

libc6:
  Đã cài đặt: 2.31-0ubuntu9.2
  Ứng viên: 2.31-0ubuntu9.2
  Bảng phiên bản:
 *** 2.31-0ubuntu9.2 500
        500 http://de.archive.ubuntu.com/ubuntufocal-updates/main AMD64 Gói
        100 /var/lib/dpkg/trạng thái
     2.31-0ubuntu9 500
        500 gói http://de.archive.ubuntu.com/ubuntufocal/main amd64

Điều này cho tôi biết trong các gói "bình thường" 2.31 là phiên bản chính thức cho phiên bản HĐH của tôi (Ubuntu 20.04).

Vì vậy, tôi đã thử làm thủ công:Làm cách nào để cài đặt phiên bản libc6>= 2.29?

Tôi đã tải xuống libc6_2.34-0ubuntu3_amd64.deb từ http://archive.ubuntu.com/ubuntu/pool/main/g/glibc/, như được mô tả, nhưng khi tôi chạy: sudo dpkg -i libc6_2.34-0ubuntu3_amd64.deb, nó tạo ra lỗi sau:

dpkg: liên quan đến libc6_2.34-0ubuntu3_AMD64.deb chứa libc6:AMD64:
 libc6:AMD64 phá vỡ fakeroot (<< 1.25.3-1.1ubuntu2~)
  fakeroot (phiên bản 1.24-1) đã có và được cài đặt.

dpkg: lỗi xử lý kho lưu trữ libc6_2.34-0ubuntu3_amd64.deb (--install):
 cài đặt libc6:amd64 sẽ phá vỡ fakeroot và
 không được phép cấu hình lại (--auto-deconfigure có thể hữu ích)
Đã bắt gặp các lỗi trong quá trình xử lí thông tin:
 libc6_2.34-0ubuntu3_amd64.deb

Tôi giải quyết điều này như thế nào? Tôi là một người mới, vì vậy tốt nhất là không phá vỡ hệ thống của tôi

N0rbert avatar
lá cờ zw
Không nâng cấp libc vì ứng dụng đơn lẻ, đó là hành động rất nguy hiểm. Stockfish đã được cài đặt như thế nào? Phiên bản của nó là gì? Từ PPA/Flatpak/Appimage/Snap/tar nào?
lá cờ jp
Tôi lấy nó từ đây: https://abrok.eu/stockfish/ Đó là phiên bản linux dành cho máy tính hiện đại + av2 luôn hoạt động. Tôi thực sự, thực sự phụ thuộc vào điều này, tôi sợ -_-
guiverc avatar
lá cờ cn
Điều này có trả lời câu hỏi của bạn không? [Tại sao kho Ubuntu không có phiên bản phần mềm mới nhất?](https://askubuntu.com/questions/151283/why-dont-the-ubuntu-repositories-have-the-latest-versions-of-software )
N0rbert avatar
lá cờ zw
Chỉ tò mò mô hình CPU của bạn là gì?
lá cờ jp
@ N0rbert đó là Intel Core i7-4710HQ
lá cờ jp
@guiverc Tôi đã biết về điều này, nhưng tôi thực sự phụ thuộc vào hoạt động của Stockfish
Điểm:3
lá cờ zw

Cần lưu ý rằng https://abrok.eu/stockfish/ không phải là chính thức, tác giả nói rõ ràng rằng các gói đã được biên dịch với gcc 11.2/mingw 10 trên Ubuntu 21.10.
Trong khi bạn đang chạy 20.04 LTS cũ hơn, libc cũ hơn và các thành phần hệ thống cốt lõi khác cũng vậy.

Tôi thấy hai giải pháp khả thi:

  • Các gói chính thức từ nhà phát triển

    Gói StockFish cho Ubuntu danh sách URL sau là trang web của nhà phát triển https://stockfishchess.org . Vì vậy, bạn nên ghé thăm https://stockfishchess.org/download/linux/ và sau đó tải xuống bản phân phối phần mềm có liên quan. Tại thời điểm viết nó có thể được thực hiện theo chương trình như sau:

    cd ~/Tải xuống
    wget -c https://stockfishchess.org/files/stockfish_14.1_linux_x64_avx2.zip
    giải nén stockfish_14.1_linux_x64_avx2.zip
    cd stockfish_14.1_linux_x64_avx2
    chmod +x stockfish_14.1_linux_x64_avx2
    

    và sau đó chạy nó như ./stockfish_14.1_linux_x64_avx2.

    Lưu ý: nó chạy ngay cả trên 18.04 LTS, không phàn nàn về libc.

  • Một số PPA của bên thứ ba

    Phát hiện PPA cho StockFish là có thể. Nó sẽ kết thúc với ví dụ Gói gỡ lỗi StockFish 12.2 cho 20.04 LTS, có thể được cài đặt bằng cách sử dụng các lệnh bên dưới:

    Sudo add-apt-repository ppa:savoury1/games
    sudo apt-get cập nhật
    Sudo apt-get cài đặt stockfish
    

    Lưu ý: Tôi không chắc chắn về tối ưu hóa AVX2 ở đây.

    Hoàn nguyên về mặc định phiên bản 11.1 có thể bằng cách sử dụng các lệnh dưới đây:

    sudo apt-get cài đặt ppa-purge
    Sudo ppa-purge ppa:savoury1/games
    
lá cờ jp
Cảm ơn bạn! Tôi đã phát hành bản phát hành 14.1 chính thức và bây giờ nó đã hoạt động :)

Đăng câu trả lời

Hầu hết mọi người không hiểu rằng việc đặt nhiều câu hỏi sẽ mở ra cơ hội học hỏi và cải thiện mối quan hệ giữa các cá nhân. Ví dụ, trong các nghiên cứu của Alison, mặc dù mọi người có thể nhớ chính xác có bao nhiêu câu hỏi đã được đặt ra trong các cuộc trò chuyện của họ, nhưng họ không trực giác nhận ra mối liên hệ giữa câu hỏi và sự yêu thích. Qua bốn nghiên cứu, trong đó những người tham gia tự tham gia vào các cuộc trò chuyện hoặc đọc bản ghi lại các cuộc trò chuyện của người khác, mọi người có xu hướng không nhận ra rằng việc đặt câu hỏi sẽ ảnh hưởng—hoặc đã ảnh hưởng—mức độ thân thiện giữa những người đối thoại.