Pull to refresh

Comments 57

стоит отметить, что компиляция настоолько редка, что ей почти никто не пользуется...

да и раздел со сборкой можно было вынести в отдельную главу в которой и рассказать как собрать себе .deb.
и объяснить чем плох (sudo )make install
Ага... Особинно не компилируют Гентушники да Слаководы...

И еще стоило бы написать о аномалиях, которые случаются при установке програм с исходников, или других пакетных систем rpm->deb.
гентушники в этот блог даже не заглядывают.
UFO just landed and posted this here
«Как собрать себе .deb» очень интересно было бы почитать.
Я считаю что независимо от популярности компиляции из исходников уметь ей пользоваться необходимо всем пользователям Linux. Исходя из моих наблюдений, большинство начинающих пользователей убунту сталкиваются с исходниками которые нужно компилировать. Я с этим столкнулся почти сразу же после установки убунту: мой тогдашний провайдер использовал свою програму авторизации для доступа в сеть, а версии под Linux 64bit не было. Мало того, с исходным кодом программы авторизации не было даже make-файла!
Также бывают случаи, когда даже существующий в репозитории пакет приходится пересобирать самому. Типичный пример - баг в gnome-ppp, который не давал программе сворачиваться в трей после установки соединения. Тут же и пригодится умение создавать deb-файлы из исходников (что можно сделать используя тот же checkinstall).
Дома Генту, на работе Убунту.
*Хоть названия и похожи но то что принцип совершенно разный думаю все в курсе :))
Так вот, почему то по привычке постоянно на работе если надо чтото поставить собираю из исходников, благо дома дистфайлов гигабайт на 20. Мне этот путь кажется более правильным. Бинарные пакеты это конечно хорошо и быстро, но я почему что люблю полазить в gcc и по собирать систему ручками. И на то есть несколько моих субьективных:
1. можно, хоть и порой не на много, оптимизировать приложение при компиляции.
2. приложения в сорцах быстрее обновляются и есть всегда, наравне с rpm, но не deb
3. true unix way ;) в компиляции проявляется сама философия линухи, таким его планировал Тордвальдс и таким он должен быть.
1. опенофис с -O3 ?
2. гм, не припомню такой софтины, который бы в репке дебиана не нашлось. а вот маскировка невинного kuickshow в генте меня убила.
3. Когда торвальдс планировал все и всегда собирать из сырцов?
1. Ну в этом конечно смысла нет, да и ставить офис не приходится так как он там есть.
2. Софтины бывают разные, некоторые пишутся на заказ;) стоит прочитать статью что бы понять что автор тоже сталкивался, да и каждый пользователь хоть раз да сталкнется с этой проблемой.
3. когда сказал фразу - Software like sex ;)
1. где там? в третьем стейдже нету ОО. и вообще, тру-гентушники собирают систему со stage 1. так что офис тоже ручками :) кстати, не знаю как в генте с -O3, а вот во FreeBSD точно дает неслабый прирост производительности.
2. оно-то да, но если софтина писалась на заказ - вы ее дистфайл тоже не факт, что найдете.
3. Software is like sex - it's better when it's free (c ):)
leave, как я понял вы считаете себя умнее. Пусть будет так, но в своих постах я писал про убунту везде, кроме фразы про мою домашнюю машину и обьем дистфайлов.
Просто знаете, есть такие люди, которые предпочитают ручную коробку, более быстрому и простому вариатору; ручной разгон и вольтмод, заводскому или упоси боже автоматическому разгону; предпочитают попросить официанта принести полтинник самбуки, стакан и коньячный, уже готовому коктейлю; примеров много, но смысл тот, что предпочитают делать ручками то, что можно сделать автоматически. Кто сказал что моя генту стоит из третьего стажа, или упоси господи гуевого инсталера? Ставилась она еще с 2005.1 в далеком уже 5 году. Просто почему то ручкам и консоле доверяю больше чем пакетам и гуйне, уж извините меня. А еще я предпочитаю FreeBSD а не PCBSD.
Тут дело немного в другом,не в том что круче тот кто больше делает руками, а кто как привык и кому как, субьективно, больше нравится, ибо профессионализм и прочее не написать в комментах и уж тем более не затроллить.
Упаси боже считать себя умнее кого-то, не зная его реального уровня :) Я просто как-то подсознательно не люблю генту. Не знаю за что, но не испытываю к ней симпатии; хотя, например, слаку люблю и юзаю который год на древнем ноуте. Дело вкуса, не иначе.
Мир?
Мир)
Сочтемся на Слаке, я ей тоже симпотизирую;)
Хотя убунту наравится тем, что за нее можно садить неподготовленного к линухе пользователя. Система готова к употреблению "из коробки". Хотя это утвеждение тоже спорно, есть у меня пара преданных федоре знакомых. Убунту всеже в некоторых местах/ситуациях незаменима.
З.ы. нам гентушнекам фсе пох, даже патрек нам не бох)
UFO just landed and posted this here
конечно редка - а про apt-build что никто не слышал ?
Для убунты обычно помогает строка в гугл "Имя-программы for Ubuntu". Гугл в таких случаях обычно выдает линк на Убунтуфорумс, где и написано как и что про нужную софтину.
Хорошая статья, сама неоднократно преобразовывала рпм пактеы в деб, хотя вообще-то это делать не рекомендуется, поскольку никто не дает гарантий что приложение будет корректно работать. И еще скачивая рпм пакеты, нужно быть готовым к тому, что установленный пакет захочет еще кучу зависимых пакетов, именно поэтому при установке новых приложений, рекомендуется пользоваться синаптиком.
После неудачных поисков deb-пакета на официальном сайте возможно имеет смысл посмотреть на getdeb.net, поисковики часто на него меня отправляют =)
Может я поступил и не совсем Ъ, но подключил себе репозиторий GetDeb'а. Жить стало несколько проще :)
А где можно найти полные пути к репозитариям getdeb'а?
А сейчас этот репозиторий сдох?
На деле при установке из исходников лучше выполнять следующее:
./configure && make && sudo checkinstall
Отличие от описанного ./configure && make && make install в том, что после make собирается deb-пакет, который сразу же устанавливается. После checkinstall пакет находится в текущем каталоге и может быть использован для повторной установки. Кроме того при создании пакета (внимательно читаем что пишут в консоли) если возможность указать зависимости, что так же заметно облегчает жизнь при повторной установке.

Плюсы такого подхода в том, что установленные приложения управляются Synaptic/aptitude и не требуют исходников для удаления (make uninstall).

Кроме того существует утилита dpkg-buildpackage, предназначенная уже больше для разработчиков. Мануал к ней можно найти тут: http://www.penguin-soft.com/penguin/man/1/dpkg-source.html
UFO just landed and posted this here
Зачем пугать пользователя компиляцией? У Ubuntu (и Debian) одна из лучших систем пакетов. Лучше бы рассказали преимущества пакетов, над инстралляторами:
1. Отсутствие вообще всяких вопросов пользователю. Поставил галочку и всё установилось.
2. Гарантия совместимости версий ПО из официального репозитария.
3. Гораздо меньший размер из-за того, что библиотеки скачиваются только одни раз.
4. Автоматическое обновление всего софта.
Есть одно "но", про которое пользователи Linux сейчас забывают и это может сыграть с ними злую шутку.

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

Следите за безопасностью системы.
Не панацеей, а бичом или проклятьем, наверное?
Именно так ;) только проснулся и давай комментарий писать... думаю мой сонный мозг суть моего возмущения все-же раскрыл.
Да, смысл ясен, но веселее от того не становится: ведь рядовой пользователь и в исходнике не найдёт закладки.
Никогда и ни при каких условиях не скачивайте пакеты из официальных источниках
Наверное, имелись в виду неофициальные источники? Уж с сайта создателя софта можно поди скачать? :)
да, это так! читайте выше мой комментарий про сонный мозг ;)
По моему невозможно описать сборку программ из исходников
Это настоящее искуство, разве что только основные приёмы. (не считая порты BSD, Gentoo и другие)
плюсаните плиз, до ноля, хочу пост добавить, но неверные заминусовали, черти
Как раз сборку-то описать как плюнуть, а вот правильно создать все необходимое для сборки, в основном Makefile - уже сложнее.
UFO just landed and posted this here
.deb конечно хорошо и удобно, но вот например такие вещи как MPplayer или VLC лучше все-таки компилировать, например, .deb пакет MPlayer'а из офф. репозитория собран без аппаратной поддержки, а это одна из сильных сторон MPlayer'а. Да и поддержку HD не в каждом пакете найдешь. Я уже не говорю о ядре.
Это спорный вопрос. Возможно включение аппаратной поддержки приведет к увеличению производительности у вас и к полному отказу в работе приложения у других. Такие моменты должны быть вынесены в архитектуру приложения. Либо аппаратная поддержка включается на уровне библиотеки и галочки в меню, либо с помощью системы плагинов. Если разработчик этого не предусмотрел, а просто рекомендовал собрать код с нужным флагом, который как я уже говорил может работать у одних и приводить к отказу у других, то в таком случае у майнтейнера пакета нет выбора при сборке пакета. Его задача сделать так чтобы код работал на 100% кол-ве хостов.
Согласен, но потому-то по дефолту такая функция и отключена, а суть остается. Если мне нужна аппаратная поддержка, то .deb пакет меня не устраивает.
Как вы думаете, зачем в apt/source.lst есть строчик ^deb-src
Вызможно вы забыли или не в курсе про возможности через APT собираеть пакеты самостоятельно
рекомендую посмотреть опции apt-get
То что про это не написал авторо, очень досадно
Необходимо писать продолжение
может вы напишите? я очень примерно представляю что это. :)
был бы очень благодарен.
меня неверные заминусовали
за излишнее к ним пренебрежение
Меня только одно останавляивает от собственноручной компиляции и установки (make install) программ в Ubuntu.

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

Поэтому пользуюсь в только официальными и getdeb.net пакетами.
Хорошим тоном будет целиком ставить приложения, которые не идут в форме .deb пакета в папку /opt. Для этого есть директива --prefix. У меня так и сделано. Для этого папка opt(optional) и была придумана в свое время.
Спасибо за информацию, мои знания Линукс, к сожалению, фрагментарны, спасибо, что помогаете мне сделать их более целостными.
можно в папке с исходниками, там, где делали make&&make install потом набрать make uninstall :)
Благодарствую, не буду впредь избегать компиляции из исходников.
всегда пожалуйста :)
а со всеми ли исходниками это будет работать корректно?
в большинстве случаев да, в любом случае, с исходниками поставляются файлы типа INSTALL или README, и там наверняка будет описано, как избавится от программного обеспечение, если Вас оно не устраивает :)
а про apt-get и apt-cache можно? И вообще про репизитарии
не понимаю в чём собственно проблема. В гугле куча документации, в т.ч. и русской, хорошая статьи по apt и репозитариям лежат на citkit:

http://citkit.ru/articles...
http://citkit.ru/articles...

Вообще, apt-get уже неактуален, советуют использовать aptitude, который к тому же имеет консольный графический интерфейс.
да у меня проблем то нет. я маны читать умею.

А почему лучше aptitude, если гуй не учитывать?
apt-get это уже старье. даже каноникал говорила что лучше юзать aptitude Онолучше разрешает зависимости, да и удобнее в использовании
Sign up to leave a comment.

Articles