LINUX.ORG.RU

О компиляции ПО из исходных кодов

 


0

0

Два опубликованных сегодня перевода посвящены одной и той же проблеме - компиляции ПО из исходных кодов, но выражают противоположные точки зрения на этот процесс: 1) Steven Goodwin, "Три шага до ненависти к свободному ПО" (http://rus-linux.net/lib.php?name=MyL...); 2) Mitch Meyran, "Три шага до любви к Свободному софту: configure, make, make install" (http://rus-linux.net/lib.php?name=MyL...). Вторая статья интересна сама по себе. Было бы также интересно увидеть дополнения "бывалых" линуксоидов по поводу тех затруднений, которые могут возникнуть при компиляции исходных кодов и методам преодоления этих затруднений.

>>> Подробности

★★★

Проверено: Shaman007 ()

Ответ на: комментарий от Dudraug

>нэ?

Вы о критериях необходимости и достаточности слышали? Или детство прошло не в институте, а во дворе с семками?

stellar
()
Ответ на: комментарий от adarovsky

adarovsky, что ты с этим постгресом.

Ну я собирал, когда на генте сидел, он мне постоянно нах не нужен был, только проект когда проверял, а если уж надо добавить сразу в старты то там на сколько помню rc-update есть, который, кстати можно сделать, чтоб вызывался после сборки. и будет тебе счастье. И авахи ставил, и тоже не было проблем. Может что в консерватории не то?

anonymous
()
Ответ на: комментарий от alfix

>Гентой, всё таки, пользуется не один человек. Postgres вполне может запускаться по воле юзера, именно тогда, когда последнему это нужно.

+1. «rc-update add postrgres default» должно оставаться в компетенции юзера/админа, а не установочного скрипта.

anonymous
()
Ответ на: комментарий от V0ID

rpmseek.com даже лучше подойдёт: можно найти пакеты, содержащие данную либу, для конкретного дистра, архитектуры, и т.д.
И не просто найти, а сразу скачать и поставить

KUser
()
Ответ на: комментарий от anonymous

>И даже проще, pacman не нужен, достаточно: # makepkg -i
собирать от рута нехорошо, тогда уж: yaourt -Sb "абы-что" (с прописанным в sudo pacman-ом)

grimp3ur
()
Ответ на: комментарий от anonymous

>configute, make, make install - редкостное говно для фанатиков.

Это базис

anonymous
()
Ответ на: комментарий от anonymous

> configute, make, make install - редкостное говно для фанатиков.

По-моему это вещи одного уровня со сборкой радиоприёмника или усилителя. Ну да, можно готовое купить, но почему бы и нет, если хочется самому сделать?

anonymous
()
Ответ на: комментарий от KUser

Так то если rpm. RpmSeek заклинило, к сожалению, очень давно. Давненько я туда не заглядывал. Только что зашел и навскидку поискал rtorrent. Самое свежее что там есть - 0.7.6 (0.7.9 текущий). Годичной давности релиз (как минимум)...

V0ID ★★★
()
Ответ на: комментарий от alfix

>>тогда он поставит постгрес себе в хому.

>Ничего себе "В моём, понятно, случае."...

Если юзер на многопользовательской машине хочет сам решать, когда ему запускать службу, а когда нет, её надо ставить в домашний каталог. Иначе придётся постоянно теребить администратора. Что не так?

adarovsky ★★★★
()
Ответ на: комментарий от anonymous

>adarovsky, что ты с этим постгресом ... rc-update есть, который, кстати можно сделать

Можно, и не особо сложно. Просто оно накапливается. Добавь в автозагрузку. Пропиши маршрут для avahi. Заточи xine, mplayer, и прочее под Pulse Audio. Пропиши bluetooth устройство в bluez. В итоге тратится куча времени на то, что в других дистрибутивах делают мантейнеры.

adarovsky ★★★★
()
Ответ на: комментарий от adarovsky

> Просто оно накапливается. что значит "накапливается"? руки отсохнут сделать rc-update? про авахи тебе сказали, что ты неправ.

однажды в дебиане я задался вопросом, почему там медленно загружается система. посмотрел список установленного и малость обалдел: в автозагрузку были прописаны самые немыслимые вещи, которые я установил 1 раз 100 лет назад на посмотреть (например, asterisk), и забыл о них. так вот. сделать rc-update ... ты вряд ли забудешь при надобности, а вычистить мусор -- запросто.

хотя не буду спорить, что ubuntu больше вещей делается автоматически. другое дело, что если это нравится тебе, то не значит, что нравится и мне. я свою точку зрения никому не навязываю.

anonymous
()
Ответ на: комментарий от adarovsky

прошу прощения, квотинг съехал чутка...

anonymous
()
Ответ на: комментарий от Displacer

> А если нету, человеку, который готов потратить не более 2-х часов в своей жизни - оно не надо.

Открой для себя Arch и makepkg (или аналогичные утилиты в Crux или Slackware) ;-)

anonymous
()
Ответ на: комментарий от V0ID

Ну ещё deb тоже ищет, но насколько хорошо не знаю, ибо не надо.
Жаль если заклинило, иногда помогал разруливать зависимости, когда apt и yum не могли найти пакет.

KUser
()
Ответ на: комментарий от anonymous

>что значит "накапливается"? руки отсохнут сделать rc-update?

зависит от того, для чего тебе нужна ось. Если для того, чтобы поиграться/разобраться/запихать на старую машину, облегчив до предела, то Gentoo тут практически вне конукренции. Если Не хочется её замечать, то Ubuntu. Вот и всё.

Про себя: пока я понимал, что каждое обновление обойдётся мне в пару тысяч, rc-update меня не напрягал абсолютно :) потому что выгоды от использования deltup перевешивали эти мелкие неудобства. С появлением нормального интернета всё стало по-другому :)

>я свою точку зрения никому не навязываю.

Да я, в общем-то, тоже. Не знаю, чего все ко мне прицепились :)

adarovsky ★★★★
()
Ответ на: комментарий от Displacer

> Если в дистрибутиве её по каким то причинам нет - то может и не стоит её смотреть?
> А если очень очень очень нужно - вперёд, разбираемся, думаем головой, гуглим,
> обращаемся к разработчикам, в общем решаем проблему серьёзно.

Акуеть :)
Нифига себе серьезная проблема.

Korwin ★★★
()
Ответ на: комментарий от anonymous

Вопрос не в том, панацея это или нет, просто большинство программ в *nix старается придерживаться этого, и игнорировать их просто глупо, когда беретесь компилировать программы руками.

kod-x
()
Ответ на: комментарий от anonymous

>В репозитории community патч есть, следовательно юзер сможет скомпилить без правки исходников.

Не может, там патч лежит двух-летней давности для версии 0.4.3-1.

>И как вы себе это представляете? Как можно стандартизировать простейший формат PKGBUILD? Ну, если другие форматы на эту простоту пойдут, то это хорошо, а если нет? тогда придется PKGBUILD до уровня монструозного rpm.spec наращивать - нет-уж, спасибо, не надо! Пусть все остается, как есть.

Это распыление ресурсов, пока в PKBUILD не все реализовано, его будут дополнять, пока не дорастет до того-же rpm.spec. Т.е. по сути будет сделана та-же самая работа.
А если бы был стандарт, регламентирующий один формат пакетов, это бы облегчило работу многим людям, работающим с GNU/Linux.

Но этому вряд ли суждено случиться, ведь хакерам нужна свобода, а она, зачастую, несовместима со здравым смыслом.

kod-x
()

Плохим IMHO вещам учат -- собирать всё вручную. Сборкой софта пользователь заниматься не должен, об этом должна болеть голова у мэйнтейнеров пакетов в соответствующем дистрибутиве.

php-coder ★★★★★
()
Ответ на: комментарий от Gharik

> Очередные ниасилившие Генту еретики?

Потому что Gentoo — это Linux, а Linux это не UNIX, идеология сборки из сорцов в Linux является лишь мутным отражением идеи UNIX об удобстве переносимости ПО в исходниках.

Linux, собираемый из исходников, искажает реальность UNIX. Пользуйте FreeBSD и будет вам щастье и благословение.

iZEN ★★★★★
()
Ответ на: комментарий от iZEN

>Потому что Gentoo — это Linux, а Linux это не UNIX, идеология сборки из сорцов в Linux является лишь мутным отражением идеи UNIX об удобстве переносимости ПО в исходниках. >Linux, собираемый из исходников, искажает реальность UNIX. Пользуйте FreeBSD и будет вам щастье и благословение.

Бобер выдыхай!!!

anonymous
()
Ответ на: комментарий от php-coder

первый твой нормальный коммент на LORе -- про мозг вспомнил?

я рад

anonymous
()
Ответ на: комментарий от anonymous

>> автор просто не понял концепции СПО и Unix, где каждая программа должна выполнять свою работу и иметь, по возможности, текстовый интерфейс, для взаимодействия > Это далеко не панацея, и пихать этот принцип везде где только можно - глупо.

Панацея. Так программы между собой взаимодействуют. Можно минимальными усилиями из элементарных кирпичиков собрать что-то большое и мощное.

На том же bash: вечером у меня небольшой скрипт скачивает wget'ом c ftp видео летней пьянки ( закачка иногда обрывается, ждет и начинается заново - с докачкой [-c] ), затем mencoder'ом конвертирует это в 320x240 с адекватным сжатием и заливает это по bluetooth на телефон. А с утра я в маршрутке сижу в наушниках и смотрю видео.

skwish ★★
()
Ответ на: комментарий от php-coder

> Плохим IMHO вещам учат -- собирать всё вручную. Сборкой софта пользователь заниматься не должен, об этом должна болеть голова у мэйнтейнеров пакетов в соответствующем дистрибутиве.

Это комьюнити. Тут каждый может быть мэйтейнером и сам собрать себе пакет, с теми опциями, с которыми ему это нужно. Те кто таким талантом не обладают: 1) учатся 2) ждут пока мэйтейнер соберет для них пакет 3) пишут статьи о том, как они ненавидят пакеты

skwish ★★
()
Ответ на: комментарий от adarovsky

> Можно, и не особо сложно. Просто оно накапливается. Добавь в автозагрузку. Пропиши маршрут для avahi. Заточи xine, mplayer, и прочее под Pulse Audio. Пропиши bluetooth устройство в bluez. В итоге тратится куча времени на то, что в других дистрибутивах делают мантейнеры.

Некотрым людям это нужно 1 раз за период жизни машины. Их так устраивает. Тем более, что их взгляд на некотрые вещи может отличаться от взгляда мэйнтейнера.

skwish ★★
()

бл№№№ ,затрахали "собирать или не собирать",
юзер это ПОЛЬЗОВАТЕЛЬ, он только пользуется не принося пользы Линукс-сообществу(ну если только платой за помощь/поддержку).
ЛИНУКСОИД(это Ъ! поэтому с большой буквы)- ему хочется самый свежий софт с новым/улучшеным функционалом(для официальных репозиториев софт просто могут не успевать собирать/тестить -его тысячи),ему нравится процесс изучения и получения новых знаний о своей системе, и что очень важно он(мы) ПОМОГАЕТ_СООБЩЕСТВУ делом, советом, пакетом, патчем.


зы. а собирать надо, пример Ardour -в стабильном дебиане -0.93, последний -2.4.1. с вайном та-же ситуация.

S_Paul ★★★★★
()
Ответ на: комментарий от iZEN

Ну и как, код на С/С++/Python/Perl etc. Хорошо в .jar идёт? А устанавливается?

JackYF ★★★★
()
Ответ на: комментарий от adarovsky

>Если юзер на многопользовательской машине хочет сам решать, когда ему запускать службу, а когда нет, её надо ставить в домашний каталог. Иначе придётся постоянно теребить администратора. Что не так?

Эээ... Начнём с того, что этот пользователь может и являться администратором. А вообще, непонятно следующие... Зачем делать так, чтобы для запуска проги нужен был админ? Как пример: ls, cp и прочее... брр. :) Может весь секрет в значениях слов "ставить" и "служба"?...

alfix
()
Ответ на: комментарий от anonymous

Всем, кто утверждает, что неумеющим компилировать достаточно пользоваться Убунтой и т.п. Я астроном-любитель, одна из лучших программ в линуксе(да и вообще) эта - www.clearskyinstitute.com/xephem/ В репах Debian и компания её нет. Но я ее все-таки скомпилировал, всего за полдня :))

anonymous
()
Ответ на: комментарий от anonymous

>Всем, кто утверждает, что неумеющим компилировать достаточно пользоваться Убунтой и т.п. Я астроном-любитель, одна из лучших программ в линуксе(да и вообще) эта - www.clearskyinstitute.com/xephem/ В репах Debian и компания её нет. Но я ее все-таки скомпилировал, всего за полдня :))

Это снова я - пока писал, оказалось, недавно вышла новая версия - придется снова вспоминать тот страшный день Великой Компиляции - прога того стоит :)

anonymous
()
Ответ на: комментарий от anonymous

> Говорю же - нет там свежей версии, сейчас уже 3.7.3 нда :)), это был намек на использование сборочных скриптов старого пакета для новой версии тарбола src( и с последующим получением deb пакета).хотя checkinstall может подойдет

elipse ★★★
()
Ответ на: комментарий от elipse

>это был намек на использование сборочных скриптов старого пакета для новой версии тарбола src( и с последующим получением deb пакета).хотя checkinstall может подойдет

За намек спасибо, буду его юзать, но основная мысль прежняя - просто так установить пакет из репозитория кликнув мышкой, как например KStars - не получится, а жаль, по мне KStars более попсовая что-ли. Придется более сложным способом, но я хоть за полдня, но смог скомпилировать, а многие не осилят и не попробуют эту великолепную программу :(

anonymous
()
Ответ на: комментарий от anonymous

> а многие не осилят и не попробуют эту великолепную программу ну там и лицензия на non-free выходит (т.е. автор заботится о популярности :)))) и интерфейс motif - ну не прется от него новое поколение. кто не осилит сборку программы - поставит старую версию deb пакета , в астрономии 7 лет это один миг :)))))

elipse ★★★
()
Ответ на: комментарий от elipse

>ну там и лицензия на non-free выходит (т.е. автор заботится о популярности :)))) и интерфейс motif - ну не прется от него новое поколение. кто не осилит сборку программы - поставит старую версию deb пакета , в астрономии 7 лет это один миг :)))))

motif не сильно отпугнет - сама прога хороша, но из-за него пришлось копать библиотеки, так что или не осиливают, или просто по лени плюют на xephem вмесьте с его motif-ом, и ставят KStars, ну или SkyChart, но она вечная бета. А 7 лет для астропроги вовсе не миг :)

anonymous
()
Ответ на: комментарий от anonymous

> так что или не осиливают, или просто по лени плюют на xephem 1. нужен мантейнер - сопрождающий для пакета 2. есть критерий популярности - хиты не выбрасывают из дистра если они не конфликтные по зависимостям 3. секция non-free на дисках не распространяется Debian

п1 + п2 = необходимое (но не достаточное ) условие появление пакета в Debian

elipse ★★★
()
Ответ на: комментарий от elipse

> 1. нужен мантейнер - сопрождающий для пакета

По моим наблюдениям, если уж любитель астрономии использует линукс, то он в нем как рыба в воде и никакая компиляция и возня с библиотеками/зависимости для него не проблема. Во вяском случае так было до меня и убунты :))

anonymous
()

>А вот где проблемы есть, так это наверно в дебианоподобных дистрах, где на каждой либе по 10 миллионов патчей от меинтейнеров пакаджей лежит. Сам лично помню какие-то проблемы с кривыми библиотеками в Debian (или Ubuntu)

Смеялсо под столом.

vit122
()
Ответ на: комментарий от anonymous

>Всем, кто утверждает, что неумеющим компилировать достаточно пользоваться Убунтой и т.п. Я астроном-любитель, одна из лучших программ в линуксе(да и вообще) эта - www.clearskyinstitute.com/xephem/ В репах Debian и компания её нет. Но я ее все-таки скомпилировал, всего за полдня :))

Пеши исчо.

vit122
()
Ответ на: комментарий от iZEN

>Потому что Gentoo — это Linux, а Linux это не UNIX, идеология сборки из сорцов в Linux является лишь мутным отражением идеи UNIX об удобстве переносимости ПО в исходниках.

>Linux, собираемый из исходников, искажает реальность UNIX. Пользуйте FreeBSD и будет вам щастье и благословение.

Что для такого эффекта надо употребить?

vit122
()
Ответ на: комментарий от pawnhearts

>Очередной гентушник который не слышал про deb-src и src.rpm
>apt-get build-dep foo
>установит всё что необходимо для сборки пакета из исходников
>apt-get -b source foo
>скачает исходники и соберет из них deb пакет

http://www.debian.org/doc/manuals/apt-howto/ch-sourcehandling.en.html
"The APT system provides an easy way to obtain source code to the many programs __contained in the distribution__, including all the files needed to create a .deb for the program."

Ну, ты понял о чем я.

shlag
()
Ответ на: комментарий от anonymous

Вот поэтому учёные-астрономы выбирают FreeBSD. В коллекции портов всегда свежее и протестированное ПО, в том числе и Xephen 3.7.3.

iZEN ★★★★★
()
Ответ на: комментарий от iZEN

>В коллекции портов всегда свежее и протестированное ПО

4.2

"Вот поэтому учёные-психиатры выбирают для своих опытов iZEN'а". Результат этих неудачных опытов мы можем наблюдать на ЛОРе:)

Led ★★★☆☆
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.