PDA

Виж пълна версия : Как се деинсталират .tar.gz програми (сорсове)


Mikis
15.03.03 г., 22:45
Въобще как се деинсталират компилирани програми. Например компилирана е някаква програма с

./configure
make
make install

и се е инсталирала например в /usr/local. След известно време свалям по-нова версия, но искам преди да я инсталирам да махна старата. Как става? Имало нещо с make uninstall, но къде се изпълнява?

П.С. Свалих това животно Stow. Сега ще видим какво прави ;)

Fo
16.03.03 г., 01:31
Ами където и make install :) ако има uninstall в makefile :p

JoZ
16.03.03 г., 22:45
Ако има make uninstall е ясно как работи и тогава всичко е
лесно, но виж ако липсва става малко по-особено. Ако .tar.gz
който си инсталирал пише само в /usr/local и там в
поддриректориите отиваш във всяка поддиректория и триеш
едно по едно. Добре е да видиш датата на инсталираните
програмки за да имаш ориентир дали са към същия пакет.
Може също така да се ориентираш като погледнеш в Makefile
на въпросния tar.gz. Ако обаче make insall пише насам натам
по други директории извън /usr/local (има такива програмки,
примерно bind) тогава довиждане на чиста деинсталация.
За да си спестиш подобно ровене и тровене на нерви, най-
добре прави пакети и ги ползвай с packet manager на
съответната система която ползваш. Трудно е докато го
схванеш, но пък после ти е улеснение особено при update или
deinstall. Принципно на сорс няма какво да му deinstall (това си
написал в заглавието) - само го изтриваш. Следва да триеш
това което е направил make install, а то не е сорс. Различните
unix/linux системи ползват различни packet managers.

Mikis
17.03.03 г., 11:48
Originally posted by JoZ
Принципно на сорс няма какво да му deinstall (това си
написал в заглавието) - само го изтриваш. Следва да триеш
това което е направил make install, а то не е сорс. Различните
unix/linux системи ползват различни packet managers.
Мда прав си :) Заглавието е некоректно и го пооправих. Иначе не съм фен на различните пакетни системи. Искам, като сваля дадена програма да мога да я инсталирам на всяка дистрибуция (може и да не е Линукс), а това става единствено със сорсове. Инсталацията е мъка (деинсталацията също :) ), но според мен си струва. А как се прави пакет от сорс код не знам, затова и не го практикувам. Ако можеш да кажеш в общи линии как става. В момента съм със Слакуер 8,1.

JoZ
17.03.03 г., 16:10
Originally posted by Mikis
Мда прав си :) Заглавието е некоректно и го пооправих. Иначе не съм фен на различните пакетни системи. Искам, като сваля дадена програма да мога да я инсталирам на всяка дистрибуция (може и да не е Линукс), а това става единствено със сорсове. Инсталацията е мъка (деинсталацията също :) ), но според мен си струва. А как се прави пакет от сорс код не знам, затова и не го практикувам. Ако можеш да кажеш в общи линии как става. В момента съм със Слакуер 8,1.
Е така де, аз за сорс казвам да се инсталира с packet manager.
При всички положения компилираш и т.н. Обаче като
направиш пакет и го инсталираш през packet manager, после
лесно се маха при това 100%.

Не зная как се правят .tgz под slack, но тук видях много
"истински" мъже с претенции. Мисля все някой може да каже
как става специално под slack. Мъжете, хайде помогнете този
път не само на думи :)

Fo
18.03.03 г., 15:39
ИдеМ :)
./configure --prefix=/home/user/tmp/instaliraytuk
Така като напишеш след това make install всичко отива в /home/user/tmp/instaliraytuk все едно че е /
После влизаш в /home/user/tmp/instaliraytuk и пишеш (като root) "makepkg -l y -c y packagename.tgz" и си готов :D, все пак си виж "man makepkg"

JoZ
18.03.03 г., 20:39
Готино. 10q, Fo! Принтнах си го, полезно инфо. I mean it.