Да предположим току-що сте изтеглили изходния код на любимата си игра или програма и искате да я компилирате, за да можете да й се насладите. Как да изпълним такава титанична задача? Не се притеснявайте, компилирането и инсталирането на тази игра / програма на Linux не е толкова трудно, колкото звучи. |
Процедура за изграждане и инсталиране
Всеки път, когато изтеглите изходния код на програма, той ще се компресира във файл, който в Linux обикновено е от типа tar.gz или tar.bz2. Разбира се, той може да се предлага във всеки друг формат (zip например), но обикновено това е правилото.
Така че първата стъпка е да разархивирате този файл. Най-лесният метод е чрез отваряне на Nautilus, щракване с десния бутон върху съответния файл и избор намаляване натиска на. Методът, който ще видим тук, обаче е този, използван от терминала.
След като файлът бъде декомпресиран, ще бъде създадена директория, до която трябва да осъществим достъп и от която ще започнем конфигурацията и компилацията на програмата.
Когато правите всичко това от терминала, командите, които трябва да използвате, са:
tar xvzf package.tar.gz (или tar xvjf package.tar.bz2) cd пакет. / конфигуриране make make install
Това са командите, които човек обикновено трябва да следва, но би било препоръчително да се анализира всяка от тези стъпки по-задълбочено, за да се разбере напълно какво означават те.
Стъпка 1: декомпресия
Разширението tar.gz или tar.bz2 означава, че изходният код, който сте изтеглили, се компресира в tar файл, известен също като tarball. Това значително опростява разпространението на изходния код, тъй като всички файлове и папки, които го съставят, са пакетирани в един файл. Веднъж опакован, в tar файла, този файл се компресира с помощта на алгоритъма gz или bz2, в зависимост от вкуса на разработчика.
За да разархивирам файл tar.gz, написах:
tar xvzf пакет.tar.gz
В случай на файл tar.bz2:
tar xvjf пакет.tar.bz2
В повечето случаи това ще създаде папка в директорията, където се намира компресираният файл. Името на папката ще бъде същото като компресирания файл.
Стъпка 2: конфигурация
След като влезете в папката, създадена чрез разархивиране на файла tar.gz или tar.bz2 ...
cd папка
... Време е да конфигурирате пакета. Обикновено, но не винаги (затова е важно да прочетете файловете README и INSTALL), това се постига чрез стартиране на скрипта за настройка:
. / Configure
Когато стартирате този скрипт, все още нищо няма да бъде инсталирано, само системата ще бъде проверена и стойностите се присвояват на някои системно зависими променливи. Тези стойности се използват за създаване на Makefile. Makefile от своя страна се използва за създаване на двоичен файл, който в края на историята ще позволи на програмата да работи.
Когато изпълните тази команда, ще видите, че екранът се изпълва с много малко загадъчни съобщения. В случай на грешка ще се появи съобщение; и ако всичко върви добре, можем да преминем към следващата стъпка. 🙂
Стъпка 3: Изграждане на двоичен файл
Време е да се изгради двоичен файл, който не е нищо повече от изпълнимия файл на програмата. С други думи, тази процедура включва преобразуване на файлове, написани на език за програмиране на високо ниво, в чисти нули и единици, тоест единственият език, който разбира нашият компютър.
правя
За да бъде тази команда успешна, трябва да е успешна предишната стъпка. Без Makefile, make ще се провали. Ето защо е толкова важно скриптът за настройка да се изпълнява успешно.
Да, екранът отново ще се запълни със странни съобщения и вероятно ще отнеме известно време, за да завърши. Това ще зависи от размера на програмата и скоростта на вашия компютър.
Стъпка 4: инсталация
Разбира се, вече имаме изпълнимия файл, но неговата инсталация липсва. Тази стъпка трябва да се направи с администраторски права.
sudo make install
Тъй като в този хипотетичен случай не сме направили промени в конфигурационния файл, програмата ще бъде инсталирана в папката по подразбиране. Като цяло това обикновено е така / ЮЕсАр / местни / хамбар тъй като позволява от която и да е страна, когато пише името на програмата, тя се изпълнява (без да се налага да въвеждате пълния път на програмата).
Стъпка 5: Изпълнение
Не, ние не убихме никого. Това е просто кулминационната стъпка на целия процес на изграждане и инсталиране. За да стартирам програмата, която толкова старателно превърнахме в двоичен файл, аз написах:
./ име на програмата
Ако програмата е била инсталирана в друга папка, различна от / usr / local / bin, трябва да въведете пълния път на програмата.
Почистване на ранчото
В случай, че имате много, много малко дисково пространство, може да искате да изтриете всички файлове, създадени по време на двоичния процес на изграждане. В този случай получих достъп до папката, създадена чрез разархивиране на файла и написах:
направете чисти
Забележка: не забравяйте да запазите вашия Makefile. Този файл ще е необходим при деинсталиране на програмата в бъдеще.
деинсталиране
Програмата не беше това, което очаквахме и искаме да я изтрием от лицето на нашата система. Как Програмата, която току-що инсталирах, не се ли показва в Софтуерния център или Synaptic? И сега?
В случай, че не сте изтрили вашия Makefile, възможно е да деинсталирате програмата лесно. Написах следната команда в папката, създадена при разархивиране на файла:
направете деинсталиране
Ако не сте имали късмет и деинсталирането е било неуспешно, няма да има друг избор освен да изтриете файловете на ръка. Истинско главоболие. За да разберете къде се намират тези файлове, можете да разгледате вашия Makefile.
В случай, че сте изтрили Makefile, най-добре е да преинсталирате програмата и след това да го направите направи деинсталиране, тъй като това ще регенерира Makefile. Не забравяйте да го инсталирате, като използвате същите конфигурации (в този случай нито една) в . / Configure.
Благодаря ви много, винаги, когато стартираме в linux, един от основните проблеми е как да компилирам, добре обяснен, въпреки че е препоръчително да прочетете readme или да инсталирате ...
Благодаря ви много, винаги, когато стартираме в linux, един от основните проблеми е как да компилирам, добре обяснен, въпреки че е препоръчително да прочетете readme или да инсталирате ...
«Ако не сте имали късмет и деинсталирането е било неуспешно, няма да има друг избор освен да изтриете файлове на ръка. Истинско главоболие »
По-препоръчително е да го преинсталирате и след това да направите „make uninstall“, тъй като ще направим Makefile регенериран. Важно е да го инсталирате, като използвате същите конфигурации (в този случай нито една) в configure.
сега, ако не искате да го стартирате, като поставите името на програмата, но създадете пряк път към работния плот или той да се появи в менюто на приложенията, как се справяте?
Поздрави!
Добър урок. Сега дори аз мога да компилирам.
Мисля, че втората стъпка би била да прочетете readme (RTFR xD) и това е най-фундаменталното от всички, тъй като много програми имат зависимости, с които трябва да се съобразите при инсталацията, или е необходима някаква допълнителна стъпка или също е добре, че четете го, защото предлага добри възможности за марката, която може да ни заинтересува.
Поздрави!
Напълно! Ето защо препоръчвам винаги да четете README и INSTALL.
Ти си прав. Това, в случай че нямате Makefile. Говорех за случая, че дори да има Makefile, той не може да бъде деинсталиран по някаква друга причина.
Както и да е, ще добавя вашия коментар към публикацията, което според мен е много уместно и точно.
Прегръдка и благодаря за коментара! Павел.
Tudo bem Krafty! Никой не се обижда. Написах тази публикация, защото никога не бях отразявал темата в блога. Както и да е, отбелязвам темите, които препоръчвате (някои много добри). Със сигурност ще пиша за тях в не твърде далечното бъдеще.
Голяма прегръдка и благодаря, че оставихте вашите коментари! Павел.
Не искам да съм зъл, но тази тема вече е обсъждана няколко пъти досега тази година.
Предлагам някои теми, за да видите, че не оставям коментар, само за да направя бард.
- Телефония през IP
- Различни торент клиенти (кой да изберете).
- Създаване на скриптове за онези неща, които сме имали многократно в конзолата.
- Премахнете модулите в ядрото, така че да инициализира Linux по-бързо при зареждане.
Дано не съм обидил / притеснил никого
чудесно, чудесно за тези от нас, които започнаха да се развързват с Linux
Да, като цяло те са подробно описани в README. В противен случай при компилиране ще се появи грешка и въз основа на грешката (която ще покаже коя библиотека липсва) ще трябва да инсталираме съответната зависимост.
Прегръдка! Павел.
Крафти, определено сте лоши вибрации. Къде сте виждали урок като този, толкова ясен и обяснителен? за мен е отлично, salu2,
Благодаря ви много за ръководството! Помогна ми да изясня някои неща 🙂
Между другото, съвет, който работи доста добре за мен, за да разреша проблема със зависимостите, е да направя преди всичко 'sudo apt-get build-dep program_name'; Не знам дали работи на всички дистрибуции, използвал съм го на Debian (Squeeze, където наскоро компилирах MuseScore 1.2, за да облекча архаичните репозитории на стабилния клон ... ...
Предполагам, че някой по-информиран ще може да даде по-фини подробности 🙂
Поздрави!
Не трябва ли да вземем предвид зависимостите, от които се нуждае програмата, преди да компилираме?
Имам малко време да използвам linux и това е едно от най-големите ми съмнения, това ще ми бъде много полезно, тъй като не бях намерил публикация с тази конкретна тема 😀
или знаете ли някой?
Наздраве ..
чудесно, не бях виждал този пост, но това е поради грешка от тип 1 или тип 2
Няма ли друг метод?
Този метод вече използвах успешно. Проблемът е, че има много, много програми с изходен код, които не използват тази система, ние нямаме скрипта за конфигуриране. Бих искал как да ги съставя.