Εγκατασταση/απεγκατασταση προγραμματων

geo909 | Κυρ, 05/11/2008 - 12:52 | 1' | 5

Εχω μια γενική ερώτηση σχετικά με την εγκατασταση προγραμμάτων με μεταγλώτιση (./configure-make-make install):

Τι γίνεται εαν θελω να απεγκαταστησω ενα πρόγραμμα που εχω κάνει compile,
ή (ακόμη πιο κρίσιμο) αν υπάρχει καινούρια έκδοση και θέλω να το αναβαθμίσω?

Επίσης, εαν εχω κάνει compile ενα πρόγραμμα, εργαλεία τύπου "apt-get autoremove"
μπορεί να σβήσουν βιβλιοθηκες/πράγματα που εχουν μπει χειροκίνητα (αρα δεν εχουν μπει από τον package manager)?
Θα νομίζει οτι πλεονάζουν ή θα καταλάβει οτι χρειάζονται?

Ευχαριστω πολύ

Δώσε αστέρια!

MO: (ψήφοι: 0)

Σχόλια

http://www.linuxinsider.gr/content/%CE%A0%CF%89%CF%82-%CE%BA%CE%AC%CE%BD%CF%89-compile-%CE%BC%CE%B9%CE%B1-%CE%B5%CF%86%CE%B1%CF%81%CE%BC%CE%BF%CE%B3%CE%AE-%CE%B1%CF%80%CF%8C-%CF%84%CE%BF%CE%BD-%CE%BA%CF%8E%CE%B4%CE%B9%CE%BA%CE%AC-%CF%84%CE%B7%CF%82

make uninstall
Όταν θελήσουμε να επεγκαταστήσουμε το πρόγραμμα (αν βέβαια έχουμε καταφέρει να το εγκαταστήσουμε πρώτα Smiling) αρκεί να ξαναπάμε στον υποκατάλογο που κάναμε όλες αυτές τις δουλειές πριν και να δώσουμε την ανωτέρω εντολή ως su.

να μην εγκαθιστάς προγράμματα που έχεις κάνεις compile αλλά ΜΟΝΟ πακέτα που έχουν χτιστεί για τον pms. Δηλαδή για παράδειγμα deb πακέτα για debian και λοιπά forks ή mutations και rpm πακέτα για rpm διανομές.
Το compile να το αποφεύγεις -εκτός και αν το εφαρμόζεις εξαιρετικά σπάνια- γιατί διαφορετικά θα χάσεις την μπάλα, το κέντρο (package manager) δεν θα ξέρει τι υπάρχει εγκατεστημένο και εσύ δεν θα θυμάσαι πλέον τι εγκατέστησες, πως το εγκατέστησες, τι θέλει αναβάθμιση τι θέλει απεγκατάσταση, τι conflicts υπάρχουν κοκ.

ArchLinux Keep It Simple, Stupid

http://www.archlinux.org/

Μake uninstall;! Πολύ απλό!

Ισχύει και το αντίστροφο απο αυτό που είπα πριν, δηλαδή κανοντας
make uninstall μπορεί να σου σβησει και βιβλιοθήκες που χρειάζονται απο άλλα προγράμματα
αλλα το σκριπτάκι δεν το γνωρίζει;

Επίσης άλλες δυο ερωτήσεις:

Εαν εχουμε missing dependencies αυτο σημαίνει οτι
λοίπουν κάποια αρχεία *lib, ετσι? Αυτά, σε περίπτωση που δεν υπάρχουν
στα repositories που μπορεί να τα βρει κανεις; Sοurceforge?
Επίσης, αν τα κατεβάσει, σε ποιον φάκελο τα τοποθετεί;

@LinuxNeophyte Εχεις απόλυτο δίκιο και ετσι κι αλλιώς ειναι μαζοχισμός να κάθεσαι να
ψαχνεσαι αντι να κάνεις δυο κλικ. Ομως αυτο το ζηταω γιατι αφενος μπορεί να θελω να εγκαταστησω
κατι πολύ εξειδικευμένο σε μια διανομή με περιορισμένα repositories (πχ puppy) και αφετερου
θελω να καταλάβω πως δουλευει το πράγμα, ηδη εχω πάρει μια ιδέα..

geo909]
Εαν εχουμε missing dependencies αυτο σημαίνει οτι
λοίπουν κάποια αρχεία *lib, ετσι? Αυτά, σε περίπτωση που δεν υπάρχουν στα repositories που μπορεί να τα βρει κανεις; Sοurceforge?
Επίσης, αν τα κατεβάσει, σε ποιον φάκελο τα τοποθετεί;

Ειδικά για τα dependencies, πρέπει να χρησιμοποιείς τον διαχειριστή πακέτων. Αν δεν υπάρχουν στα repos, και αναγκάζεσαι να κατεβάζει μια βιβλιοθήκη από το site του project, τότε συνήθως η διαδικασία εγκατάστασης είναι ίδια (untar, ./configure, make, sudo make install) και η εγκατάσταση τους γίνεται συνήθως αυτόματα σε κάποιον υποφάκελο του /usr/local.

--Stat rosa pristina nomine, nomina nuda tenemus

Ok, καταλαβα, ευχαριστω!

Ειναι επικινδυνο να κάνουμε make uninstall για τον λόγο που προανέφερα;