У овом малом водичу ћу вам објаснити (и научити вас) зашто је боље да саставите програм (рецимо Фирефок, Влц, итд.) Из његовог изворног кода, него да га преузмете (из Тхе Софтваре Центер, Иумек, Пацман итд.) ) и инсталирајте.
Прво идемо са теоријом:
Шта је „компајлирање“?
Компајлирање је претварање изворног кода (кода написаног на одређеном програмском језику, рецимо Ц, Ц ++, итд.) У извршни програм за његов рад употребом процесора за претварање језика који се користи за генерисање кода у бинарни и асемблер. Такође се често назива и амбалажом.
Зашто је боље „саставити“?
Прво морате знати следеће да бисте разумели зашто. Речено на „сиров“ начин (једноставан, не баш професионалан, итд.), Свака раса (Пентиум, Цоре, Атом, итд.) И њене врсте (Интел, АМД, АРМ, итд.) Процесора имају упутства (софтвер написан у асемблеру који обрађују код) свог модела (Цоре и7, Цоре и5, Атом к2, Пхантом к8, Арм, итд.) и такође имају општа упутства која имају све те врсте.
Када преузимате из спремишта преко Софтверског центра / апт-гет / Иумек / Иум / Пацман / итд., Програм који се инсталира аутоматски каже да је ово прекомпајлирано за рад на свим могућим процесорима (Интел и Амд). Како се ради о унапред компајлираном програму, она упутства типична за тај специфични модел процесора се губе (мислите да ако су програми попут Фирефок-а или Цхроме-а, који имају више од 7 или 8 милиона линија кода, морали да ставе сва специфична упутства за сваки процесора на тржишту, количина кода била би толико велика да тај програм више не би био ефикасан) не остављајући ништа више од општих бренда свог творца (Интел, Амд, Арм).
Када сами преузмете, распакујете и компајлирате изворни код програма, он се компајлира са одређеним упутствима програма TU процесор, (што не значи да неће радити на машини са другом, већ само да ће бити оптимизована посебно и чисто за ваш процесор), чиме се ослобађа и ослобађа сва снага коју ваш процесор може да пружи захваљујући својим специфичним упутствима.
У техничким детаљима, ова специфична упутства уско су повезана са оним што је познато као чипсет ваше матичне плоче, што је велика главобоља за оне који имамо Интел када желимо да надоградимо процесор и матичну плочу.
Били бисте изненађени снагом коју имате Амд Атом к2 или ти Интел Цоре Инсиде, КСНУМКС Цоре Дуо, i3, итд. са вашег старог рачунара. Сад вам је јасно зашто се у Линук свету много говори о компајлирању чувеног кернела (срца сваког оперативног система)? Замислите ако компајлирате читав систем (графичко окружење (Гноме, Кде, итд.), Кернел, најчешће коришћени програми (Фирефок, Влц, Цхроме, Вине, итд.) Посебно за ваш рачунар) са свим нивоима брзине и оптимизације који бисте имали.
Овај принцип компилације за добијање кода оптимизованог посебно за вашу машину је онај који користе дистро-и попут Гентоо-а и деривата (о чему сада нећу да говорим, користим Федору минимално са компилацијом Гноме 3, кернела и других програма) где се систем, ваша ажурирања и програми увек компајлирају.
Против састављања:
Већ сам објаснио све предности, али као и све у универзуму има и једну против.
У случају компилације јесу;
- Време потребно за ово (Фирефоку са и7 4790К (без оверклока, јер сам јако лош са напоном) треба 3 минута, Гноме Схелл-у (трака више ништа) са Гноме-Цонтрол-Центер-ом требало је око 2 минута, оба су састављена у у исто време у Федори. Али на машини са мање моћним процесором овај пут може бити несразмерно дуго).
- Процесор максимално користи 100% снаге са свим својим језгрима, тако да потрошња и топлота нагло расту (узмите то у обзир ако имате оверцлоцкинг или ако је посебно преносни рачунар), па је згодно да припремите мате или кафу за ту прилику.
- Можда вам недостаје библиотека (алат) која користи програм тако да не греши у компилацији. Генерално, сви дистрибутери имају своје пакете или скупове како би то избегли (они су препуни разних библиотека и других ствари које омогућавају кернелу да комуницира како треба са процесором током процеса).
Како могу да компајлирам?
Овде говорим о компајлирању програма за нормалну употребу, а не кернела.
аптитуде инсталирати битне дх-маке девсцриптс факероот дебхелпер дебиан-полици ццацхе дх-ауторецонф аутотоолс-дев буилд-деп ардор
Ставио сам дебиан-полици, али ако ваш дистро није Дебиан и ако вам се појави грешка да не постоји такав пакет, једноставно га занемарите. Морам да појасним да дуго нисам користио ове системе, па ако пакет више није у спремиштима, немојте правити проблем.
За Федору:
судо иум -и инсталирај заглавља језгракернел-девелсудо иум гроупинсталл "Алати за развој"судо иум гроупинсталл "Развојне библиотеке"
Овде се морам извинити за оне који користе Арцх (не познајем добро дистро) и ОпенСусе, јер не знам ове дистро нити одговарајуће пакете да бих извео исправну компилацију (и нисам поткрепио оно што је на мрежи, тако да за то двоје не знам да ли раде).
Сада када имате све потребне захтеве, потребно је само да преузмете изворни код програма који желите да компајлирате, у зависности од екстензије коју распакујете помоћу терминала (не брините, оставићу вам команде) и када одете у директоријум (увек са терминалом), радите исто следеће:
Ако имате могућност да се конфигуришете за одабир компонената и осталих:
./configure
Затим откуцате:
make
И на крају да инсталирате програм на ваш линук:
make install
Наредбе за распакирање помоћу терминала (датотека се распакује у фасцикли у којој се датотека налази):
.Тар датотеке (катран) - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Пацк | тар цвф филе.тар / филе / * Распакујте | тар квф филе.тар Погледај садржај | тар твф филе.тар
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - .тар.гз - .тар.з - .тгз (катран са гзипом ) - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Спакујте и зип | тар цзвф филе.тар.гз / филе / Распакујте и распакујте | тар кзвф филе.тар.гз Погледај садржај (није извучен) | тар тзвф филе.тар.гз
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - .гз (гзип) - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Цомпресс | гзип -к датотека (датотека је компримује и преименује у "филе.гз") Распакујте | гзип -д филе.гз (Датотека га распакује и оставља као „датотеку“). Напомена: гзип компримује само датотеке, а не директоријуме
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - .бз2 (бзип2) - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Цомпресс | бзип2 датотека | бунзип2 датотека (датотека је компримује и преименује у "филе.бз2") Распакујте | бзип2 -д филе.бз2 | бунзип2 филе.бз2 (Датотека га распакује и оставља као „датотеку“) Напомена: бзип2 компримује само датотеке, а не директоријуме
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - .тар.бз2 (катран са бзип2) - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Цомпресс | тар -ц датотеке | бзип2> филе.тар.бз2 Распакујте | бзип2 -дц филе.тар.бз2 | тар -кв | тар јвкф филе.тар.бз2 (најновије верзије тар-а) Погледај садржај | бзип2 -дц филе.тар.бз2 | катран -тв
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - .зип (зип) - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Цомпресс | зип филе.зип / маио / арцхивес Распакујте | унзип филе.зип Погледај садржај | распакујте -в датотеку.зип
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - .рар (рар) - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Цомпресс | рар -а филе.рар / мај / архива Распакујте | рар -к филе.рар Погледај садржај | рар -в филе.рар | рар -л датотека.рар
И то је све. Поздрав из Буенос Аиреса, Аргентина. Срећни празници и Нова година! :)