Программист, CEO SHIFU.IO

Rust: решаем проблему с старыми версиями GLIBC

Когда ваш бинарник запускается на системе отличной от вашей, и начинает кричать что-то типа:

    libc.so.6: version `GLIBC_2.31' not found
    libc.so.6: version `GLIBC_2.33' not found

Это значит, что версия glibc под которую собирался ваш бинарь в системе новее чем на системе с ошибкой.

Решается несколькими способами:

  1. Сборкой в Docker-контейнере с старой версией Linux
  2. Сборкой под x86_64-unknown-linux-musl - это по идее отвяжет вас от glibc, но - может не собираться в вашей среде
  3. Использование кросс-компилляции с помощью https://github.com/cross-rs/cross - люди пишут что может и не помочь.