• Willkommen im Linux Club - dem deutschsprachigen Supportforum für GNU/Linux. Registriere dich kostenlos, um alle Inhalte zu sehen und Fragen zu stellen.

[gelöst] Installationsfrage zu make install

soyo

Hacker
Hallo Freunde
Ich hab mal ne Grundsatzfrage .
Installiere ich ein Programm oder ne lib (die es nicht als Packet gibt, nur als .tar.bz2) mit make install , klappt das wunderbar .
Gibt es von dem Programm oder lib eine neue Version , muß ich dann die Vorgängerversion erst deinstallieren , oder kann ich einfach wieder mit dem "Dreisprung"
also auch wieder mit make install , die neue Version drüber installieren ?

MfG soyo
 

RME

Advanced Hacker
Hallo,

Meist gibt es im Makefile auch noch:

Code:
make uninstall
um die installierten Dateien wieder zu entfernen.

Die Neu-Installation wird nur bedingt die alten Dateien ersetzen; dann wenn:

-1- die Installation ist an den genau gleichen Ort in Deinem Verzeichnis-Baum (wird bestimmt durch "./configure"). Dann werden "alte" Dateien mit dem (exakt) gleichen Namen mit der "neuen" Version überschrieben.

-2- (z.B.) Libraries haben meist noch eine Versions-Nummer als Teil des Datei-Namens (z.B. "libncurses.so.5.7"). Eine neuere Version wird daher die ältere nicht überschreiben.

Ob Du eine "alte" Version weiterhin behalten willst, kommt natürlich darauf an, ob irgendwelche Programme genau diese (und nicht die neuere) benötigt.

Wie auch immer, wenn Du selber Programme installierst (via ./configure; make; make install), ist es eine gute Idee zumindest das Makefile aufzubewahre. Die Datei (Text) sagt Dir eigentlich alles bez. wie und wohin installiert wurde.

Ich mache das ganze immer mit einem typescript (siehe "man script"). z.B. für die Installation:

Code:
make script 000_make_install_script.txt
su
<Passwort>
make install
...
...
exit
exit
Das erste "exit" beendet su
Das zweite beendet das script (nicht vergessen, sonst läuft es weiter)

Jetzt hast Du eine Text-Datei wo die Ausgabe von "make install" protokolliert ist.

Gruss,
Roland
 
A

Anonymous

Gast
soyo schrieb:
Gibt es von dem Programm oder lib eine neue Version , muß ich dann die Vorgängerversion erst deinstallieren , oder kann ich einfach wieder mit dem "Dreisprung" also auch wieder mit make install , die neue Version drüber installieren ?
kommt darauf an welche Dateien dadurch installiert werden und was sich geändert hat. in bestimmt 90% der Fälle würde es wohl reichen.
Ist aber eine ziemliche dreckige Arbeitsweise, insbesondere wenn es sich um Libs dreht. Bei dem einem einfachem make install bekommt /etc/ld.so.cache zB schon mal die Änderung nicht mit und so noch ein paar Kleinigkeiten mehr. Bei Minor-Änderungen na gut, wenn man wirklich so faul sein will, aber Major-Änderungen gehen hier gar nicht, da der zu installierende Dateiname schon mal anders aussieht.
Was spricht eigentlich dagegen hier beim compilieren ein rpm Paket zu erstellen und dieses dann zu installieren?

robi
 
OP
soyo

soyo

Hacker
Hi
Vielen Dank .
Jetzt ist mir einiges klar geworden.
Werd's mal so machen .
sorry , das uninstall hab ich immer übersehen .
Das mit dem rpm bauen , werd ich mir mal für den Urlaub aufheben .
Es handelt sich nur noch um 2-3 Sachen bei denen es momentan noch so gehen muß .
Und da es dort neue Versionen nur alle 1/2 - 1 Jahr gibt kann ich damit leben :)
Das größte make Gefummele (mercurian für die TV Karte) ist mir ja durch SUSE 12.1 abgenommen worden.
OK, ist kein Gefummele , macht eh Spaß auch mit der Konsole zu arbeiten , und einiges geht auch einfacher und schneller .
Also nochmals vielen Dank.
MfG soyo
 

abgdf

Guru
soyo schrieb:
Das mit dem rpm bauen , werd ich mir mal für den Urlaub aufheben .
Es gibt da das Tool "checkinstall".
Wenn Du das statt "make install" verwendest, baut es Dir - mit Glück, (leider) nicht immer - von allein ein rpm.
 
Oben