Встановлення програм із джерела


12

Мені було цікаво про загальні установки всіх програм у Linux. А що це означає? Добре, коли я використовував Windows, я знав, що якщо я хочу встановити додаток, я двічі клацнув файл .exe, а потім наступний, наступний, наступний.

У Linux я зрозумів, що, можливо, існує звичайний (не загальний) спосіб встановлення будь-якої програми. Можливо, встановлення з джерела? Ну чи є покроковий метод, який можна використовувати для встановлення додатків, як у Windows, чи ні?

Я запитую, тому що я не хочу продовжувати запитувати Google, як це зробити? Отже, мені вдалося встановити нещодавно з вихідного freecad з цього посібника, і я думаю, що це було б дуже приємним початком як звичайний метод, правда?

Але справа в тому, де знайти потрібне джерело і коли у програми є дуже унікальний метод установки!


Можливий дублікат того, як встановити з .tar.gz?
Тахіонс

Ні, моє питання було зрозумілим, я думаю! Просто більш глибока інформація
Габріель

чудово чудово, як Howtogeek.com/105413/…
Mohammad Reza Rezwani

Відповіді:


14

Інструкції з установки різняться в різних програмах, хоча є добре налагоджені інструменти, такі як autotools (включає автоматичне налаштування та autoconf) та cmake.

Оскільки програми можуть надходити різними мовами програмування, важко дати загальні команди, які відповідають усім пакетам. Наприклад, Python часто має сценарії setup.py, де програми C часто використовують автоінструменти або принаймні Makefile.

Я завжди починаю з пошуку INSTALL, README або подібних файлів. Якщо вам потрібно скласти програму з джерела, вам, ймовірно, потрібен build-essentialпакет, який залежить від компіляторів та інших загальних пакетів розробки.

Залежно від програми, яку ви намагаєтеся скласти, можливо, вам доведеться встановити інші залежності. Перевірте README на те чи вихід ./configureсценарію (виконуваний файл, розташований у корені витягнутого джерела). Наприклад, якщо в ньому сказано, що вам потрібні "заголовки розробки x11", спробуйте знайти "x11-dev" або "libx11-dev" у сховищах (у цьому випадку це libx11-devте , що ви шукаєте).

Дистрибутивні джерела, які були побудовані за допомогою autoconf / automake, можна витягти та налаштувати за допомогою:

tar xf foo-1.0.tar.gz
cd foo-1.0
./configure
make
sudo make install

Використовуйте ./configure --helpдоступні варіанти. За замовчуванням часто встановлюються файли, до /usr/localяких ідеально добре. Якщо ви не збираєтесь пакувати файл у файл .deb, не змінюйте цей префікс, /usrоскільки він може суперечити системі управління пакетом (dpkg).

makeповинен почати компілювати все, де make installвстановлюються файли у визначені місця ( sudoце потрібно для запису у привілейовані місця типу /usr/local). Щоб видалити його пізніше, запустіть з вихідного каталогу sudo make uninstall(за умови, що пакет належним чином складений за допомогою autoconf / automake, що несе відповідальність розробника, а не ви, користувача!

Якщо ви просто зацікавлені у складанні пакету з програмного центру на вашому комп’ютері, продовжіть (відповідно замініть packageта версію):

sudo apt-get build-dep package
apt-get source package
cd package-1.0
dpkg-buildpackage -b -uc -us

Докладніші відомості про команди див. На сторінках відповідних посібників. (наприклад, запуск man dpkg-buildpackageу терміналі). Виконавши ці команди, ви матимете .deb файл у батьківському каталозі. Там, де це можливо, рекомендується використовувати пакети із сховищ Ubuntu. Наведені вище кроки показані з освітніх міркувань, але, як правило, ви бажаєте внести зміни в деякі файли перед тим, як створити пакет.


Насправді дуже корисно, тому єдиним поширеним методом є завантаження пакету (tar ??), а потім вилучення, щоб побачити його вміст! Пізніше мені доведеться запитати, я витягую файли, а потім я виконую всі ті команди, які ви згадали вище. Отже, файл встановлення - це той, над яким працювали всі ці команди? Або всі файли-каталоги додатків є специфічними, або встановлення з центру, або встановлення з джерела? Щоб зрозуміти, я просто хочу встановити додаток, куди мені хочеться, щоб все в / Вибір або / usr? Спасибі
Габріель

Дивіться оновлений пост. Каталог вилучення та зміни становить 99% усіх випадків. Ви можете побачити різні розширення після .tar, як-от .gz, .bz2, .xz. Вони відносяться до формату стиснення. .zip зустрічається рідше, оскільки він не може зберігати дозволи файлів, але він помітний принаймні 7-zip. Примітка: мої вказівки є більш загальними для "компілювати з джерела". Шляхи та конфігурація не такі, як у програмного центру Ubuntu.
Лекенштейн

Отже, не важливо, в якому каталозі я працюю ./configure, make and make install.For example id я завантажую та витягую в домашній каталог, тоді я повинен запустити ці команди і автоматично команда make install розмістить інсталяційні файли в конкретний каталог, правда?
Габріель

Немає, таким чином, певного каталогу, як Windows "Файли програм", правда?
Габріель

Після вилучення тарболу змініть свій каталог на витягнутий каталог. Точне розташування не має значення, ви можете зробити це в домашній директорії або ~ / завантаженнях, просто переконайтеся, що шлях не містить пробілів, оскільки він порушує більшість інструментів. Наприклад, ~/Downloaded Sourcesце погана ідея, де ~/Downloaded-sourcesідеально добре. Останнє запитання див. У розділі askubuntu.com/q/27213/6969
Lekensteyn

7

FreeCAD доступний у програмному центрі Ubuntu, тому створювати та встановлювати його з вихідного коду не потрібно.

Програмний центр Ubuntu - це завжди перше місце, куди ви повинні заглянути. Установка - це лише питання натискання кнопки.

На панелі ліворуч на екрані є значок Центру програмного забезпечення Ubuntu.

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

Багато програмних пакетів використовують автоінструменти GNU як систему збирання і можуть бути побудовані та встановлені за допомогою таких команд:

./configure
make
sudo make install

Перш ніж будувати програму, вам потрібно буде перевірити, що таке необхідні бібліотеки та інші залежності (це також повинно бути зазначено в документації до програми). На пакунках.ubuntu.com можна знайти пакети Ubuntu, які містять необхідні бібліотеки.

Припустимо, програмі потрібна бібліотека з назвою blah, тоді вам, ймовірно, потрібно буде встановити пакет libblah-dev(знайдіть точне ім’я на сторінці пакунків Ubuntu, яку я згадав вище).

sudo apt-get install libblah-dev

ХАХА, так, я знаю цю піктограму! Але якщо ви коли-небудь помічали, в будь-якій програмі є опис програмного центру, в якому сказано, що "канонічні не надають критичних оновлень", а версія Freecad була 0.8, і я встановив freecad v0.13.I просто хочу більш глибоких знань у системах Linux, а не відповідей, вказуючи, де знаходиться центр програмного забезпечення, все-таки дякую !:-)
gabriel

ЗАРАЗ ви говорите правильно! І ДЯКУЮ ДУЖЕ, це глибші знання, які я просто хочу! Продовжуйте!
Габріель

Гаразд, Отже, якщо я хочу встановити програму з джерела, люди цього додатка повинні надати вихідний код? Наприклад, якщо я хочу встановити комерційну програму, я не в змозі встановити її з правого джерела? ЦЕ проект відкритого джерела все-таки правильно? Це програми мають відкрите джерело для всіх, крім комерційних dont.Right?
Габріель

"якщо я хочу встановити програму з джерела, люди цього додатка повинні надати вихідний код?" - Так, звичайно, ось що означає "з джерела "! І якщо це комерційна програма, яка не є відкритим кодом, то ви не отримаєте вихідний код.
Джеспер

Тож чому більшість програм для Windows не встановлюється в Linux?
Габріель

2

Існує лише два основних підходи:

  1. Використовуйте Центр програмного забезпечення або пов'язаний з ним інструмент (Synaptic apt-getтощо). Зазвичай це найкращий варіант. Якщо вийти за межі цього методу, це може призвести до проблем, таких як конфлікти та труднощі з оновленнями, тому вам слід робити лише щось інше, якщо ви знаєте, що робите.
  2. Прочитайте документацію та використовуйте її для встановлення. Ви можете знайти його на веб-сайті проекту, або в тарболі, або в місці, де ви отримали свій файл. Або може не бути жодної документації, і в цьому випадку ви маєте Google або здогадатися. Існує дуже багато різних способів встановлення програмного забезпечення. Якщо це стає заплутаним, поверніться до числа 1.

    Якщо ваш пакет використовує стандарт ./configure; make; sudo make install, ви можете використовувати checkinstall.deb того, що ви створили. Таким чином, вам не потрібно жертвувати керуванням пакетом.


Гаразд, я задав це питання, тому що у мене були деякі проблеми з програмним центром та файлами .deb. Наприклад, я хотів встановити draftsight, програму cad, і це лише для 32 біт. Так що я намагався з ігнорувати залежності та команди архітектури, але нічого не вийшло on.Так, можливо, витягнути .deb-файл, наприклад, можливо, тоді встановити вручну з make і sudo make тощо? дякую
gabriel

Якщо для вашої архітектури немає .deb, вам доведеться інсталювати свою програму іншим способом. Ви можете користуватися Google тим, як це зробили інші люди, або шукати .dev за допомогою відповідної арки або створити з джерела. Перегляньте мою майбутню редакцію щодо чогось важливого.
Скотт Северанс

перевірити встановлення, перш ніж запустити ці команди? і що, з'явиться .deb? ((я повинен запитати, як ви робите ваші публікації красивими та організованими? з виділеними командами та персоналом? будь-яке керівництво для askubuntu?)) Так що я можу отримати .deb потім перевірити і встановити, щоб він працював на 64-бітовій, наприклад, чи я помиляюся і дурний з цим питанням?
Габріель

Ви не можете використовувати checkinstallнаявні пакети .deb. Якщо у вас вже є .deb, технічно ви можете його витягнути та встановити вручну, але це не найкращий спосіб. checkinstallце коли ви будуєте з джерела. Для форматування довідки див. Посилання довідки, яке завжди з’являється під час публікації.
Скотт Северанс

Отже, .deb-файл з архітектурою, відмінною від 64-бітової, яку я маю, не слід витягувати та встановлювати вручну? І коли ви говорите "є, коли ви будуєте з джерела". .deb-файл будується звідки? Чи він використовує той же вихідний код, що і ви створюєте з джерела? Дурне питання?
Габріель

0

Встановити з джерела дуже важко.

По можливості встановіть з програмного центру. Це еквівалент windows next-> next-> закінчення ментальності.

Ви також можете встановити речі з джерела на Windows. Це не характерно для Linux, це лише те, що більше доступних джерел застосувань націлено на Linux.


1
ну, я просто хочу стрибати в своєму досвіді Linux, мені вже три роки, і що я хочу, нарешті, не продовжувати запитувати, як і як це, чи відчуваєте ви мене? Просто, щоб зробити мої знання в Linux все глибшими і глибшими. поясніть мені джерело тощо?
Габріель


Також, коли у додатку немає .deb в моєму ubuntu, як встановити з програмного центру? Тоді я готовий ПРОПОМУ запитати у askubuntu.com або google.gr '' 'як встановити ЦЕ в ubuntu 11.10?' ''
Габріел

Так. Краще конкретний додаток. Вони дають цільові відтворювані відповіді для конкретних користувачів. Отже, вони корисні.
RobotHumans

Ну, це справді дуже корисно. Ви просто відчуєте мене і дали мені те, що я просто хочу. Але я хотів би попросити вас після того, як багато читати про Linux та Linux, я ніколи не зможу встановити будь-які програми в системах Linux? АБО щось як це неможливо ні в якому разі?
Габріель

0

Ubuntu пропонує різноманітні методи установки

  1. Через централізовану систему упаковки

    Це вподобаний метод в ubuntu (але особисто мені це не подобається) для нього програмний центр, синаптичність і здатність

  2. Автономний пакет дебюту: - Цей спосіб простіший, як і у випадку з Windows, просто двічі клацніть файл та натисніть кнопку встановлення Напр .: Менеджер пакунків Gdebi

  3. бінарне програмне забезпечення: вони дуже схожі на інсталяцію Windows .exe, він пропонує різноманітні gui для Installer, зазвичай це .bin файли

    ви можете використовувати біт-рок або подібні інструменти для виготовлення таких пакетів

  4. автопакет та подібні інструменти: - це сторонні менеджери пакунків, створені для підтримки різних дистрибутивів Linux

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

Попередження: - Це лише мої спостереження, я новачок в Linux, тому я не могла редагувати / знижувати, якщо щось не так


Ну дякую, я зі свого досвіду зазвичай бачу в програмному центрі опис програми, і якщо canonical надає оновлення, то я встановлюю його з центру. Якщо я не гуглю, тому я опублікував це питання, і всі відповіді були верними helpfull.Спасибі
Габріел

Варіант 1 набагато кращий, ніж 3 та 4, тому що ви можете отримувати оновлення автоматично. Варіант 2 чудовий, коли потрібний пакет або версія не знаходяться у вашому сховищі (варіант 1). Уникайте цифр 3 і 4, якщо це взагалі можливо, оскільки вони не користуються усіма чудовими перевагами управління пакетами і можуть спричинити конфлікти в дорозі. Навіть незважаючи на те, що автопакет працює з власним управлінням пакетами, він все ще є окремою системою та має потенціал для конфліктів та інших речей. І, якщо ви не програміст, намагайтеся уникати створення джерела. Управління пакетами - чудова річ!
Скотт Северанс

Я віддаю перевагу цим методам лише тому, що моє підключення до Інтернету є sloooow: p
Tachyons
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.