все Python 3Linux · macOSplatformфункция
platform.libc_ver()
отдельные ОС
Пытается определить библиотеку C и её версию (по умолчанию — glibc, установленную в системе): ('glibc', '2.39'); при неудаче — ('', '').
Синтаксис
lib, version = platform.libc_ver(executable=None, lib='', version='', chunksize=16384)
Без аргумента executable функция сначала спрашивает os.confstr('CS_GNU_LIBC_VERSION') и отвечает версией glibc, установленной в системе; исполняемый файл она читает, только если этот путь не сработал или файл передан явно. Поэтому libc_ver(sys.executable) может ответить иначе — старшей версией glibc, которую требует сам бинарник. На macOS и Windows результат обычно — пустые строки, а musl распознаётся начиная с 3.14. Нужна, например, чтобы понять, подойдут ли manylinux-колёса.
Примеры
import platform
lib, version = platform.libc_ver()
print(lib, version) # → ? например glibc 2.39; на musl, macOS и Windows пусто
try:
platform.libc_ver(executable='no_such_binary')
except FileNotFoundError as e:
print(type(e).__name__) # → FileNotFoundError — функция читает сам файл
См. также
Открыть в полном глоссарииdocs.python.orgСообщить о неточности