Бібліотеки linux

Всі ми звикли користуватися програмами в будь-якій операційній системі для вирішення своїх завдань. Але за функціональністю програм варто ще одна річ, з якою ми рідко зустрічаємося при звичайній роботі з комп`ютером. Це бібліотеки, які містять загальний набір функцій і можливостей, які використовуються програмами. Наприклад, більшість програм, написаних на Сі, використовують стандартну бібліотеку Сі, в якій містяться всі основні можливості взаємодії з системою.

У кожної програми є свій набір бібліотек, які повинні бути в системі щоб вона змогла працювати. Інакше б програмістам довелося заново винаходити різні алгоритми, писати багато коду та розробка програм займала б в рази більше часу. У цій статті ми зібрали основні бібліотеки Linux, а також їх призначення. Ця інформація допоможе вам краще освоїтися в системі.

Що таке бібліотеки?

Як я вже говорив вище - бібліотеки реалізують спільні можливості, які потім використовуються програмами. Якщо говорити просто, то бібліотека - це набір функцій, кожну з яких можна використовувати в будь-якій програмі. Наприклад, якщо програмі потрібно вивести рядок на екран, вона не буде лізти прямо в буфер відеокарти, а використовує функцію зі стандартної бібліотеки.

Бібліотеки діляться на два типи - динамічні і статичні. Статичні бібліотеки linux підключаються на етапі складання програми, а динамічні - під час виконання і вони загальні для декількох програм. Нас будуть цікавити саме динамічні бібліотеки linux. Вони знаходяться в папках / lib, / lib64, / usr / lib, / usr / lib / x86_64-linux-gnu. Кожна бібліотека має розширення .so, за яким слід номер версії. Цей номер збільшується кожен раз, коли розробники вносять серйозні зміни. Такий підхід необхідний для того, щоб зберегти сумісність для програм, які використовують старі версії. Наприклад, в системі може бути дві бібліотеки libfuse.so.0 і libfuse.so.1. Далі ми розглянемо основні бібліотеки і їх призначення.

Як отримати інформацію про бібліотеки?

Перед тим як перейти до розгляду самих бібліотек, вам, напевно, буде цікаво, як отримати інформацію про них і дізнатися де вони знаходяться у вашій системі. Бібліотеки Linux можуть бути розміщені в різних каталогах, в залежності від дистрибутива, але подивитися ці каталоги можна, виконавши:

$ Ls -l / lib / x86_64-linux-gnu /


Інформацію про залежності кожної бібліотеки ви можете подивитися командою ldd:

$ Dpkg -S /lib/x86_64-linux-gnu/ld-2.24.so


Як бачите, бібліотека ld.so належить пакету libc6, точніше вона входить в набір інструментів Сі. Більш детально, про те, як встановлювати нові бібліотеки і вирішувати проблеми з ними, описано в статті бібліотеки Ubuntu.

Основні бібліотеки

Це бібліотеки основних мов програмування, які містять базову функціональність для взаємодії з системою.

  • libanl.so - бібліотека роботи з DNS;
  • libc.a - основна статична бібліотека мови Сі;
  • libdl.a - бібліотека, що відповідає за завантаження інших бібліотек під час запуску програми;
  • libnsl.so - робота зі службою NIS;
  • libstdc ++. so - Стандартна бібліотека C ++;
  • libutil.so - реалізує основні часто використовувані функції;
  • libelf.so - бібліотека для роботи з бінарними файлами ELF;
  • libevent.so - бібліотека з реалізацією механізму виконання функцій після події;
  • libgnutls.so - бібліотека з основними методами і можливостями, використовуваними в стандартних утилітах Linux;
  • ld-linux.so - головна бібліотека, вона зібрана у вигляді статичної і не має залежностей. Завантажує інші бібліотеки і виконувані файли. Ви можете викликати цю бібліотеку як програму і передати їй адреса виконуваного файлу для запуску.

бібліотеки кодеків

Ці бібліотеки містять набори кодеків для відтворення різних медіа даних. Деякі з них мають невільну ліцензію або програму з закритим кодом:

  • liba52.so - вільний декодер ATSC A / 52;
  • libavfilter6.so - бібліотека фільтрів ffmpeg;
  • libavcodec57.so - бібліотека кодеків ffmpeg;
  • libavformat57.so - бібліотека форматів ffmpeg;
  • libavutil55.so - бібліотека додаткових функцій ffmpeg;
  • libdv.so - програмний кодек для DV;
  • libmad.so - MPEG аудіо декодер;
  • libmpeg2.so - потоковий декодер відео даних;
  • libmpg123.so - бібліотека консольного плеєра mpg123;
  • libwebp.so - декодування формату Webp;
  • libxvidcore.so - медіа кодек MPEG-4.

звукові бібліотеки

  • libao.so - бібліотека програвання звуку з простим інтерфейсом;
  • libasound.so - бібліотека взаємодії зі звуковою підсистемою ALSA;
  • libaudio2.so - бібліотека роботи зі звуком, входить до складу ALSA;
  • libespeak.so - бібліотека синтезу мовлення;
  • libpulse.so - бібліотека з основними методами PulseAudio;

Робота з архівами

  • libarchive.so - бібліотека для роботи з архівами різних форматів;
  • liblzma.so - робота з архівами LZMA.

графічні бібліотеки

  • libart.so - бібліотека з реалізацією функцій для роботи з 3d графікою;
  • libaa.so - бібліотека ASCII графіки;
  • libgtk-3.so - набір методів графічного фреймворка GTK 3;
  • libgd.so - базові функції роботи з графікою і малювання;
  • libgif.so - робота з форматом зображень Gif;
  • libjpeg.so - робота з зображеннями Jpeg;
  • libglapi.so - вільна реалізація методів для роботи з OpenGL;
  • libgtk-x11-2.0.so - набір методів бібліотеки GTK 2;
  • libwx_baseu.so, libwx_baseu_net-3.0.so і інші - набір бібліотек фремворка створення графічних додатків WX;
  • libX11.so - основні методи і функції X сервера;
  • libncurses.so - одна з найпопулярніших бібліотек псевдографіки;
  • libQtGui.so, libQt5Svg.so, libQt5Widgets.so і інші - бібліотеки фреймворка розробки графічних додатків Qt.

Робота з текстом

  • libaspell.so - бібліотека перевірки орфографії;
  • libfreetype.so - бібліотека відтворення шрифтів;
  • libharfbuzz.so - бібліотека обробки символів Unicode;
  • libxml2.so - бібліотека розбору XML;
  • libyaml-0.so - бібліотека розбору Yaml.

Безпека

  • libcrack.so - бібліотека з реалізацією методів перебору паролів для перевірки їх надійності;
  • libcrypt.so - бібліотека, що відповідає за шифрування;
  • libssl3.so - бібліотека шифрування SSLv3;
  • libapparmor.so - бібліотека управління системою безпеки AppArrmor;
  • libaudit.so - бібліотека стеження за станом системи і реєстрації подій.

бібліотеки драйверів

  • libcups.so - бібліотека роботи з принтером;
  • libfuse.so - бібліотека організації віртуальних файлових систем;
  • libgphoto2.so - бібліотека взаємодії з камерами по USB;
  • libsensors.so - використовується для отримання інформації від датчиків на материнській платі;
  • libudisks2.so - бібліотека usisks, яка відповідає за автоматичне монтування та виявлення підключених пристроїв;
  • libv4l1.so - бібліотека роботи з веб-камерами;
  • libpci.so - бібліотека роботи з PCI пристроями;
  • libusb-1.0.so - бібліотека управління USB;
  • libdrm.so - бібліотека з загальними можливостями Direct Rendering Manager, відтворення графіки за допомогою відеокарти;
  • libdrm_amdgpu.so - DRM для драйвера AMDGPU;
  • libdrm_intel.so - DRM для карт Intel;
  • libdrm_nouveau.so - вільний DRM для відеокарт Nvidia;

Мережа

  • libresolv.so - бібліотека отримання IP адреси по імені хоста;
  • libpcap.so - бібліотека аналізу і захоплення мережевих пакетів;
  • libproxy.so - настройка і управління проксі;

емуляція

  • libSDL.so - бібліотека емуляції завантаження комп`ютера і базових можливостей BIOS;
  • libwine.so - бібліотека прошарку для запуску додатків Windows в Linux.
  • libvirt.so - бібліотека управління KVM;

висновки

У цій статті ми зібрали основні бібліотеки Linux, які мають найбільше значення для роботи операційної системи. Звичайно, неможливо перерахувати тут абсолютно все бібліотеки, тому що їх дуже багато. Сподіваюся ця інформація була корисною для вас.

На завершення урок про бібліотеки Linux:

Поділися в соціальних мережах:

Схожі
При запуску програми з`являється помилка: "додаток не було запущено, оскільки воно некоректно…При запуску програми з`являється помилка: "додаток не було запущено, оскільки воно некоректно…
Команда rundll32 - виконати функцію, експортовану бібліотекою dll.Команда rundll32 - виконати функцію, експортовану бібліотекою dll.
На сайті з`явилася нова категоріяНа сайті з`явилася нова категорія
Як перенести бібліотеку itunes на інший комп`ютерЯк перенести бібліотеку itunes на інший комп`ютер
Програмування під linuxПрограмування під linux
"Липка" бібліотека stickyfill."Липка" бібліотека stickyfill.
Функції bash в скриптахФункції bash в скриптах
Установка gcc в ubuntu 16.04Установка gcc в ubuntu 16.04
Мтчелл м. - програмування для linux. Професійний підхідМтчелл м. - програмування для linux. Професійний підхід
Як користуватися програмою avidemuxЯк користуватися програмою avidemux
» » Бібліотеки linux