На це питання немає простої відповіді, але я можу дати вам загальний конспект того, як це працює:
Більшість програмного забезпечення Linux надаються авторами ("upstream") у вигляді вихідного коду. Це дозволяє всім, у кого є компілятор для своєї конкретної платформи та конфігурації системи, завантажити вихідний код і скомпілювати його самостійно. На жаль для вас, багато програм покладаються на функції, що надаються іншими програмами та бібліотеками програмного забезпечення (залежності).
Програмне забезпечення Windows зазвичай поставляється у попередньо складеному вигляді Це означає, що є один загальний виконуваний файл для всіх комп'ютерів Windows, і залежності часто поставляються з ним у пакеті встановлення.
Дистрибутиви Linux беруть вихідний код, попередньо компілюють його і пропонують вам також як пакет. У пакет не входять залежності, але він посилається на них і змушує пакетну систему встановлювати їх також (що іноді може призвести до безладу, який ви, напевно, вже відчували самі).
Якщо попередньо складеного пакету немає, ви завжди можете завантажити вихідний код і скласти його самостійно. Більшу частину часу буде працювати наступне:
./configure
make
(sudo) make install (or sudo checkinstall)
Рядок ./configure встановлює етап для процесу компіляції (і видає помилки, якщо залежності не виконано). Рядок make буде виконувати Makefile - скрипт, який компілює всі частини програми.
Традиційно ви використовуєте make install, щоб потім встановити програмне забезпечення. Зазвичай вони ставлять виконувані файли в / usr / local / bin.
Оскільки ви використовуєте apt, я дуже рекомендую отримати перевірку. Ви можете використовувати його замість make install, і він створить пакет .deb для вас. Це значно спрощує видалення програмного забезпечення згодом.
Зауважте, що існує декілька інших систем компіляції, наприклад cmake; і деяке програмне забезпечення поставляється заздалегідь складеним, але не упакованим (у такому випадку ви можете запустити його прямо з нерозпакованої папки); а деяке програмне забезпечення поставляється як набір сценаріїв, які ви повинні запустити самостійно. Свіжий код з SVN іноді не має сценаріїв налаштування, тож спочатку потрібно запустити ланцюжок інструментів autoconf ... тощо, тощо. скажіть, що робити з більшістю цих загадкових завантажень. Налаштування-Make-Checkinstall - хороший перший старт.
PS. Проведіть вихідні-два, щоб навчитися програмувати себе, і все стане дуже очевидним :-)
PPS. Вам може бути цікаво, чому автори програмного забезпечення Linux не надають лише попередньо складені пакети замість вихідного коду. Що ж, іноді так і роблять. Але різні платформи та дистрибутиви Linux мають свої власні формати пакетів та правила файлової системи, тому розробнику вам доведеться надавати пакунки для кожної можливої конфігурації - що болить. Пакети Ubuntu часто найпростіше знайти - ви повинні з'ясувати, що таке PPA і як він працює!