Удаление самособранных программ (после ./conf, make etc)

Аватар пользователя physieker

sergeil писал(а):
Цитата:
physieker пишет:
простите а как?
только сейчас понял - я не знаю еще, как удалять самособранные программы. Грустный

В данном случае я буду говорить об удалении самосборного ядра, а не вообще самосборных программ.

а может Вы могли бы в этом топике расказать об удалении самособранных программ вообще?

ps вчера нашел на диске линукс формата (N2) программу InstallCheck /еще не ставил/.
написано, что она "перехватывает" компиляции и потом такие программы можно видеть через rpm (получать инфо о составе, удалять и тд).

Аватар пользователя sergeil

Re: Удаление самособранных программ (после ./conf, make etc)

Цитата:
physieker пишет:
... а может Вы могли бы в этом топике расказать об удалении самособранных программ вообще?

Вопрос, конечно, интересный...
Вы уверены, что в каждом Makefile есть секция uninstall?

Цитата:
ps вчера нашел на диске линукс формата (N2) программу InstallCheck /еще не ставил/.
написано, что она "перехватывает" компиляции и потом такие программы можно видеть через rpm (получать инфо о составе, удалять и тд).

Как Вы думаете, а зачем используется rpm? R(edhat)P(ackage)M(anager)
Напишите spec-файл и собирите RPM пакет. Там есть все что Вам необходимо, включая подпись...

Не пробовал InstallCheck, но, IMHO, если это именно так, как Вы описываетето, то он создает и устанавливает RPM-пакеты.

Аватар пользователя physieker

Re: Удаление самособранных программ (после ./conf, make etc)

т.е. если я правильно понял.
есть смысл попробовать make uninstall.

а если не получится, то считать приложение прописанным навсегда Улыбка

Аватар пользователя sergeil

Re: Удаление самособранных программ (после ./conf, make etc)

Цитата:
physieker пишет:
т.е. если я правильно понял.
есть смысл попробовать make uninstall.

а если не получится, то считать приложение прописанным навсегда Улыбка

IMHO, да... По этой причине дерево исходников после установки не удаляют, а архивируют...
ASPLinux - это RPM-based дистрибутив... Установка из исходников - крайняя мера...

Аватар пользователя physieker

Re: Удаление самособранных программ + создание rpm

sergeil писал(а):
..Установка из исходников - крайняя мера...

мда. это пожалуй сужает круг используемых приложений.
в данном случае, как вариант - building в rpm? /чтобы не прибегать к крайним-то мерам/ Улыбка

этого, как Вы думаете достаточно, чтобы разобраться с созданием rpm?
возникло сразу несколько вопросов.
a) как определить зависимости:
0. делаем /configure
1. делаем make (или это уже лишнее)?
b) создаем spec-файл.
с) создаем rpm (-bb - binary или -ba - бинарный + исходники).

ps надеюсь перевод темы топика в эту область не создает оффтоп.
я думаю, что это функциональное продолжение темы топика.
/можно изменить имя темы на "Удаление самособранных программ + создание rpm"/

Аватар пользователя sergeil

Re: Удаление самособранных программ + создание rpm

Цитата:
physieker пишет:
мда. это пожалуй сужает круг используемых приложений.
в данном случае, как вариант - building в rpm? /чтобы не прибегать к крайним-то мерам/ Улыбка

Это хорошее решение. Я сам так делаю... или стараюсь делать...

Цитата:
этого, как Вы думаете достаточно, чтобы разобраться с созданием rpm?

Ну, бегло посмотрел, вроде можна читать...

Цитата:
возникло сразу несколько вопросов.
a) как определить зависимости:
0. делаем /configure
1. делаем make (или это уже лишнее)?
b) создаем spec-файл.

Есть альтернативное решение... Ищем подходящий spec (например, для предидущей версии...), правим.... То есть, сначала поиск быстрого и легкого решения...
Катается от смеха

Цитата:
с) создаем rpm (-bb - binary или -ba - бинарный + исходники).

По вкусу. Я обычно делаю -ba...

Цитата:
ps надеюсь перевод темы топика в эту область не создает оффтоп.
я думаю, что это функциональное продолжение темы топика.
/можно изменить имя темы на "Удаление самособранных программ + создание rpm"/

Тема ушла в offtopic. Я-бы создал новую и начал с чистого листа. Реально здесь ничего не обсуждалось... Тем более, что среди нас есть ревностные поклонники сборки из исходников... Так что у Вас есть все шансы продолжить эту тему и, параллельно, начать другую...
Катается от смеха

Аватар пользователя Radik

Re: Удаление самособранных программ (после ./conf, make etc)

sergeil писал(а):
Я-бы создал новую и начал с чистого листа.

Sergeil, а разве physieker, не начал?

Цитата:
Реально здесь ничего не обсуждалось...

Все еще в переди! ;-)

physieker писал(а):
этого, как Вы думаете достаточно, чтобы разобраться с созданием rpm?

Спасибо за ссылку! ;-)
Посмотрите еще вот &viewmode=flat&order=0эту тему и вот это руководство.

Это тема (имею в виду собрание rpm) очень интересная! Сам потихоньку разбираюсь, но вместе мы можем разобраться на много быстрее... :friends:

Аватар пользователя physieker

Re: Удаление самособранных программ (после ./conf, make etc)

rrraD писал(а):
..Посмотрите еще вот эту тему..

извините, что начал развивать оффтоп.
с этой темой "Удаление самособранных программ (после ./conf, make etc)" вроде разобрались.
всем спасибо. Улыбка

Аватар пользователя Almaty

Re: Удаление самособранных программ (после ./conf, make etc)

Решил не создавать тему а немного продолжить ее.
Тут был затронут вопрос удаления програм, у меня немного другая ситуация котороя возможно поможет избежать этого удаления.
Стоит задача собрать маленький дистрибутив, ничего лишнего!
есть две машины на дну ставится самый минимум
на второй уже компилятся все нужные программы, в дальнейшем их надо перенести на первую машину.
народ говорит что нужно пройти этапы
./configure
make
а вот make install патом на той на другой машине...
так ли это..?
или что та я упустил?

Аватар пользователя Radik

Re: Удаление самособранных программ (после ./conf, make etc)

Пусть поправят меня опытные товарищи, если я ошибаюсь.
Вы выбрали очень сложный путь.
1. Минимум на первой машине придется пополнить пакетами, нужными для компиляции. Ведь фактически Вы сам пакет будете собирать на первой машине.
2. Придется копировать-переносить недокомпиленные программы.

К чему такие сложности? Не легче пакеты сразу собирать на обоих компах?

Аватар пользователя Almaty

Re: Удаление самособранных программ (после ./conf, make etc)

Цитата:
К чему такие сложности?

Где та видел похожую статью, решил уточнить так ли это

Цитата:
Не легче пакеты сразу собирать на обоих компах?

Один из компов нужен именно для сборки и компиляции.
а задача в том что бы сделать минимальный размер

Аватар пользователя sergeil

Re: Удаление самособранных программ (после ./conf, make etc)

Цитата:
Almaty пишет:
Один из компов нужен именно для сборки и компиляции.
а задача в том что бы сделать минимальный размер

Для сборки автономного дистрибутива предпочтительнее использовать RPM. Если Вас смущает размер пакетов, то отредактируйте /usr/lib/rpm/rpmrc или создайте локальный, $HOME/.rpmrc
Уберите флаг -g и отладки в пакете не будет..., что существенно уменьшит размер... Можете установить оптимизацию по размеру -Os. Правда, не уверен, что это хорошая идея...

Цитата:
-optflags: i386 -O2 -g -march=i386 -mcpu=i686
+optflags: i386 -O2 -march=i386 -mcpu=i686

-optflags: i486 -O2 -g -march=i486
+optflags: i486 -O2 -march=i486
...

Аватар пользователя Almaty

Re: Удаление самособранных программ (после ./conf, make etc)

Здравствуйте sergeil
В добром ли вы здравии?

sergeil писал(а):
Для сборки автономного дистрибутива предпочтительнее использовать RPM.

РПМ отпадает... дистр не тот что бы рпм был.

Цитата:
Если Вас смущает размер пакетов,

меня вообще смущяет все что ставится лишнее без моего ведома.
идея по поводу собрать пакет в другом месте а потом перекинуть на другую тачку отпадает? или же в это что то есть?

Аватар пользователя sergeil

Re: Удаление самособранных программ (после ./conf, make etc)

Цитата:
Almaty пишет:
Здравствуйте sergeil
В добром ли вы здравии?

Спасибо, нормально...

Цитата:
меня вообще смущяет все что ставится лишнее без моего ведома.

Не используйте зависимые библиотеки и ничего лишнего не понадобится...

Цитата:
идея по поводу собрать пакет в другом месте а потом перекинуть на другую тачку отпадает? или же в это что то есть?

1. Вы просто выполните работу RPM сами (проверка зависимостей)... Закат солнца вручную.
2. configure проверяет и использует доступные библиотеки. IMHO, вы должны будете обеспечить тот-же набор (без devel), что-бы обеспечить совместимоть. Хотя, проверить действительно необходимый набор.
[sergeil@homedesk bin]$ readelf -d cp | grep NEEDED
0x00000001 (NEEDED) Совм. исп. библиотека: [libacl.so.1]
0x00000001 (NEEDED) Совм. исп. библиотека: [libselinux.so.1]
0x00000001 (NEEDED) Совм. исп. библиотека: [libc.so.6]

Аватар пользователя Almaty

Re: Удаление самособранных программ (после ./conf, make etc)

sergeil писал(а):
Не используйте зависимые библиотеки и ничего лишнего не понадобится...

Вопрос сам по себе родился....
есть патет Х как мне узнать какие средства разработки для него нужны, что я должен поставить прежде чем начать уго компилировать?
может сам производитель пакета в нем указывает?

Аватар пользователя sergeil

Re: Удаление самособранных программ (после ./conf, make etc)

Цитата:
Almaty пишет:

sergeil писал(а):
Не используйте зависимые библиотеки и ничего лишнего не понадобится...

Вопрос сам по себе родился.... есть патет Х как мне узнать какие средства разработки для него нужны, что я должен поставить прежде чем начать уго компилировать? может сам производитель пакета в нем указывает?

В случае сборки из исходников придется читать README на каждый архив. Или просто компилировать и
доставлять (дособирать) по мере выявления ошибок компиляции или функционирования...
Для RPM все намного проще... За это отвечают зависимости... Насколько я знаю, есть три вида.
1. Нужно для функционирования...
2. Нужно для сборки...
3. Нужны для запуска (установки)...

Смотрим spec-файл... Например...

# Requires: этот пакет нужет по-любому. То есть, пакет без
# fuse версии 2.2 или старше работать не будет
Requires: fuse >= 2.2

# BuildRequires: этои пакеты нужны для сборки (не нужны для использования).
BuildRequires: fuse-devel >= 2.2
BuildRequires: glib2-devel >= 2.0

# Prereq: Эти пакеты нужно проверить перед установкой для правильного старта (использования).
# То есть, IMHO, на машине для сборки могут отсутствовать...
Prereq: /sbin/chkconfig /sbin/service

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

RSS-материал