Pelancaran Glibc 2.36 telah mencipta gangguan yang ketara dalam komuniti permainan Linux, menyebabkan banyak permainan tidak dapat dimainkan dan mencetuskan semula perdebatan mengenai kestabilan antara muka binari aplikasi (ABI) pada platform tersebut. Isu ini berpunca daripada perubahan dalam cara GNU C Library mengendalikan jadual hash simbol, yang menjejaskan permainan yang menggunakan Easy Anti-Cheat ( EAC ) dan Epic Online Services ( EOS ), serta perisian lain.
Punca Teknikal Utama
Masalah ini tertumpu pada dua kaedah untuk menyediakan jadual hash simbol dalam format ELF: DT_HASH dan DT_GNU_HASH. Walaupun DT_HASH adalah sebahagian daripada standard SYSV generic ABI dan didokumentasikan dengan baik, DT_GNU_HASH adalah pengganti yang lebih baharu dan pantas tetapi kekurangan dokumentasi yang betul. Selama bertahun-tahun, Glibc mengekalkan keserasian dengan memasukkan kedua-dua format jadual hash, tetapi versi 2.36 telah menggugurkan keperluan ini, sebaliknya bergantung pada tetapan lalai yang mungkin hanya memasukkan varian GNU sahaja.
Perubahan ini telah merosakkan beberapa permainan berprofil tinggi termasuk yang menggunakan perlindungan EAC EOS , tajuk indie Shovel Knight , dan projek sumber terbuka seperti pembatas kadar bingkai libstrangle. Kesan ini dijangka berkembang apabila lebih banyak pengedaran arus perdana menggunakan Glibc 2.36.
Nota: ELF (Executable and Linkable Format) adalah format fail standard untuk fail boleh laku dan perpustakaan pada sistem Linux.
Perbandingan Jadual Hash
- DT_HASH: Sebahagian daripada SYSV generic ABI, terdokumentasi dengan baik, piawaian mandatori
- DT_GNU_HASH: Pengganti yang lebih baharu, lebih kecil dan pantas, dokumentasi yang lemah
- Penjimatan Ruang: Membuang DT_HASH menjimatkan ~16KB setiap binari (kurang daripada 1% daripada jumlah saiz)
- Keserasian: Pemaut GNU lalai kepada "kedua-duanya", pemaut mold lalai kepada "sysv"
Respons Komuniti dan Penyelesaian Sementara
Komuniti permainan Linux telah bertindak balas dengan reaksi bercampur-campur terhadap perkembangan ini. Sesetengah pembangun berpendapat bahawa tumpuan harus beralih sepenuhnya untuk memastikan permainan berfungsi dengan sempurna melalui Proton (lapisan keserasian Windows oleh Valve ) dan bukannya mengekalkan versi Linux asli. Sentimen ini mencerminkan kekecewaan yang semakin meningkat dengan cabaran pembangunan permainan Linux asli.
Pembangun permainan sepatutnya 100% memberi tumpuan untuk memastikan permainan mereka berjalan dengan sempurna di Proton dan bukannya mengeluarkan versi Linux yang separuh masak.
Yang lain menyokong amalan pembangunan merentas platform yang lebih baik dari awal, mencadangkan bahawa pembangun harus mengelakkan teknologi khusus platform seperti DirectX dan memihak kepada alternatif merentas platform seperti Vulkan . Walau bagaimanapun, realitinya ialah banyak permainan sedia ada tidak boleh diubah suai atau dikompil semula dengan mudah untuk menampung perubahan ini.
Perisian Terjejas
- Permainan yang menggunakan Easy Anti-Cheat (EAC) dan Epic Online Services (EOS)
- Shovel Knight (permainan indie)
- libstrangle (pembatas kadar bingkai sumber terbuka)
- Perisian tambahan dijangka akan terjejas apabila Glibc 2.36 mencapai pengedaran arus perdana
Implikasi yang Lebih Luas
Insiden ini menyerlahkan ketegangan asas dalam pembangunan Linux antara kemajuan teknikal dan keserasian ke belakang. Walaupun perubahan ini secara teknikalnya menjimatkan ruang (kira-kira 16KB setiap binari) dan tidak dianggap sebagai pelanggaran ABI rasmi, ia mempunyai akibat dunia sebenar untuk pengguna dan pembangun. Keadaan ini menjadi rumit kerana pengedaran yang berbeza mungkin mengendalikan perubahan ini secara berbeza, yang berpotensi meningkatkan pemecahan.
Kontroversi ini juga menggariskan mengapa sesetengah pembangun mendapati pembangunan Windows lebih boleh diramal, walaupun kelebihan teknikal Linux . Menariknya, beberapa ahli komuniti menyatakan bahawa Proton kadangkala memberikan prestasi permainan yang lebih baik daripada Windows asli, memetik contoh seperti Elden Ring di mana pembetulan terjemahan DirectX 12 dilaksanakan lebih pantas dalam VKD3D Wine berbanding dalam Windows sendiri.
Kesimpulan
Situasi Glibc 2.36 berfungsi sebagai peringatan tentang cabaran berterusan yang dihadapi Linux sebagai platform permainan. Walaupun merit teknikal perubahan ini boleh dipertikaikan, kesannya terhadap perisian sedia ada menunjukkan keseimbangan halus antara inovasi dan kestabilan dalam ekosistem sumber terbuka. Apabila landskap permainan Linux terus berkembang, insiden ini mungkin mempercepatkan trend ke arah lapisan keserasian seperti Proton dan bukannya pembangunan asli, mengubah secara asasnya cara permainan sampai kepada pengguna Linux .