Кстати, инсталляторы в Windows контролируют это и предлагают удалять ненужные библиотеки вместе с удаляемой программой.
Кто вам сказал такую глупость, почти все анинсталляторы оставляют за собой достаточно много дллок, попробуйте сделать снимок системы до и после, и сравните - результат вас разочарует...
и не факт, что остальные все библиотеки будут нужны после этого для какой-то ещё проги
А при чем здесь собственные пути к программам? Вам подсказать, где лежать библиотеки в Линуксе, чтобы вы посмотрели, которые из них остались?
(Кстати, инсталяторы в Windows контролируют это и предлагают удалять ненужные библиотеки вместе с удаляемой программой. В Linux я пока подобного не обнаружил... может плохо man 'ы на ночь читал? happy.gif )
Конфиги, значит, массово править не лень, а удалить ненужные библиотеки - лень
Где библиотеки лежат знаю, но может быть подскажите, как понять, что какая-то из библиотек не используется?
Кстати, инсталляторы в Windows контролируют это и предлагают удалять ненужные библиотеки вместе с удаляемой программой.
Кто вам сказал такую глупость, почти все анинсталляторы оставляют за собой достаточно много дллок, попробуйте сделать снимок системы до и после, и сравните - результат вас разочарует...
Мир не без кривых инсталяторов Если инсталятор создан нормально и его целью не является оставить в системе какую-либо DLL под виндой, то он уберёт за собой всё, что поставил. (Как-никак и сам инсталяторы делал, и чужие смотрел...)
Кстати, инсталляторы в Windows контролируют это и предлагают удалять ненужные библиотеки вместе с удаляемой программой.
Кто вам сказал такую глупость, почти все анинсталляторы оставляют за собой достаточно много дллок, попробуйте сделать снимок системы до и после, и сравните - результат вас разочарует...
Ну... мир не без кривых инсталяторов :P Если инсталятор написан ровно и его целью не является оставить в винде какую-то dll'ку, то он за собой уберёт все при деинсталяции. (Всё-таки и сам не один инсталятор под винду сделал, и чужие видел...)
Где библиотеки лежат знаю, но может быть подскажите, как понять, что какая-то из библиотек не используется?
fuzzy, ты определись чего тебе в жизни не хватает То тебе не нравится пути установки программ, то теперь ты хочеш полного контроля над зависимостями. Если тебе действительно это нужно, смотри в сторону Дебиан/Убунту или Альт, насколько я помню в апт-гет-е есть такая функциональность. Хотя я чесслово не понимаю зачем это нужно - морочить голову ради экономии нескольких мега-(или даже гига-)байт в наше время имхо не имеет смысла. К примеру у меня корень 7 гиг, свободно на нём 3, винтик - 80, и это при том что стоит куча почти не нужного мне софта (напр. две версии опен-оффиса ). Как ты думаеш, если я освобожу ещё даже пару гиг, я стану счастливее? Вобщем я не вижу никакого смысла выжимать лишние мегабайты из нонешних винтиков.
Свобода есть тонкая полоска между диктатурой и анархией.
--------------------- Mandriva Linux PowerPack 2006 (Cooker-нутая) / KDE-3.5.1
Где библиотеки лежат знаю, но может быть подскажите, как понять, что какая-то из библиотек не используется?
Очень просто: если вы удалили все программы, которые ее используют, то она не нужна. Это ведь и есть полный контроль над системой.
Если инсталятор создан нормально и его целью не является оставить в системе какую-либо DLL под виндой, то он уберёт за собой всё, что поставил. (Как-никак и сам инсталяторы делал, и чужие смотрел...)
Не знаю, что вы смотрели, но многие инсталяторы программ не слишком хорошо чистят за собой реестр, особенно ключи, ответсвенные за регистрацию. А эти ключи они распихивают по всему реестру. С dll-ками не заморачивался, не знаю. Но информация от системы, что такая-то библиотека больше не используется ни одной программой, наводит на некоторые подозрения о чистоте "уборки за собой".
#!/bin/sh
find /lib /usr/lib -type f | while read LIB; do
LIBNAME=$(basename ${LIB})
LIBUSED=no
find $(echo ${PATH}|sed 's!:! !g') -type f | while read BIN; do
ldd ${BIN} | grep ${LIBNAME} &>/dev/null &&
LIBUSED=yes && break
done
[[ ${LIBUSED} == no ]] && echo ${LIB}
done
а если серьезно, то вроде любой менеджер пакетов, перед тем, как тащить зависимости выводит список онных. так что, уж если так неймется, то можно этот списочек заснапшотить и потом ручками посносить. а если вообще серьезно, то начать стоит с изучения средств пакетного менеджера как такового. в gentoo, например, есть --depclean, который чистит неиспользуемые зависимости.
2.6.14-gentoo-r5 kde-3.5.0 | openbox-3.2 Deep Purple | Rob Zombie | Led Zeppelin | ДДТ
Где библиотеки лежат знаю, но может быть подскажите, как понять, что какая-то из библиотек не используется?
fuzzy, ты определись чего тебе в жизни не хватает То тебе не нравится пути установки программ, то теперь ты хочеш полного контроля над зависимостями. Если тебе действительно это нужно, смотри в сторону Дебиан/Убунту или Альт, насколько я помню в апт-гет-е есть такая функциональность. Хотя я чесслово не понимаю зачем это нужно - морочить голову ради экономии нескольких мега-(или даже гига-)байт в наше время имхо не имеет смысла. К примеру у меня корень 7 гиг, свободно на нём 3, винтик - 80, и это при том что стоит куча почти не нужного мне софта (напр. две версии опен-оффиса ). Как ты думаеш, если я освобожу ещё даже пару гиг, я стану счастливее? Вобщем я не вижу никакого смысла выжимать лишние мегабайты из нонешних винтиков.
Вопрос был вполне точно определён в первых сообщениях темы. Далее я лишь отвечал на вопросы форумчан и коментировал их сообщения со своей точки зрения.
а если вообще серьезно, то начать стоит с изучения средств пакетного менеджера как такового. в gentoo, например, есть --depclean, который чистит неиспользуемые зависимости.
Кто не хочет париться - ставит всё по дефолту и наслаждается. Такие как я, ставят всё как хотят, правят конфигурашку за 5 минут и тоже наслаждаются. Всё быстро, все довольны, минимум нагрузки на систему.
Ну так что мешает указать --bindir=/opt/proga2 в configure? Но мы уже знаем, к чему это может в конечном итоге привести (явное прописывание в $PATH (а его длина ограничена), невозможность проделать такой трюк с базой RPM). Поэтому и отговариваем. Если вы хотите раскидывать по каталогам, но не хотите пересобирать, то можете открыть RPM в mc и вручную скопировать файлы куда нужно. Но RPM-пакет в базу не попадёт.
Кстати, инсталяторы в Windows контролируют это и предлагают удалять ненужные библиотеки вместе с удаляемой программой. В Linux я пока подобного не обнаружил... может плохо man 'ы на ночь читал?
А что есть "ненужные библиотеки"? Они, как уже было сказано выше, разделяются между разными программами. Соответственно, имеют те же права, что и пакеты с исполняемыми файлами. Если вы хотите узнать, какие библиотеки требует пакет, то введите rpm -qR <пакет>. Соответственно, при их удалении rpm скажет, кому ещё нужна эта библиотека. Если никому - удалится без вопросов.