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

Deinstallieren eines vom Quellcode installierten Programms

Hallo,

Mit Yast kann man zwar fast alles installieren, was als rpm package vorliegt. Gelegentlich muss ich aber von quelle installieren (./configure, make, make install). Das geht ja am Yast vorbei. Es gibt zwar checkinstall, aber das scheint nicht immer zuklappen.
Wie kann ich jetzt ein vom src-tarball installiertes Programm deinstallieren?
Und wohin im Filesystem werden eigentlich Programme hinkompiliert und installiert?

Danke für jede Antwort,
Michi
 

towo

Moderator
Teammitglied
Code:
make uninstall
so die sorcen noch vorhanden sind.
Wenn nicht, Pech gehabt, am Paketmanagement vorbei zu installieren ist nie eine gute Idee.
Was bei checkinstall nicht funktionieren soll, verschließt sich mir gerade.
 
Ich hatte mit checkinstall auch noch nie Probleme, so lange './configure' und 'make' sauber durchgelaufen sind - eine Alternative wäre 'rpmbuild'.

Übrigens sind auch diese uninstall-skripte, so überhaupt vorhanden, nicht immer sonderlich zuverlässig, von 'make install' würde ich daher grundsätzlich die Finger lassen.

Make love, not install.
 

abgdf

Guru
Gibt "make install" nicht aus, was es wohin schreibt ?
Die Ausgabe könnte man doch in eine Datei leiten, und anhand dieser später von Hand oder per Skript deinstallieren.

Warum nicht so ?

Gruß
 

oxe1976

Member
Generell sollte man RPMs bevorzugen.
Man kommt aber manchmal nicht drumherum etwas selbst zu kompilieren und zu installieren (z.B. neuere Version ausprobieren, wo es noch kein entsprechendes RPM gibt ...). Ich installiere sie aber meist in einen "privaten" Bereich, wo ich keine Root Rechte brauche ($HOME/programme).

Meist geht das configure so:
Code:
./configure --prefix=$HOME/programme
make
make install

Habe meine PATH variable entsprechend erweitert.
Gut, das löst zwar nicht unbedingt das Problem mit dem deinstallieren, aber so hat man den Kram vom System getrennt.
 
abgdf schrieb:
Gibt "make install" nicht aus, was es wohin schreibt ?

Unter Umständen sind das hunderte von Dateien, die Quer übers System gestreut werden.

oxe1976 schrieb:
(z.B. neuere Version ausprobieren, wo es noch kein entsprechendes RPM gibt ...).

Und genau deswegen baut man ein .rpm draus, dann erspart man sich auch das Jonglieren mit den Pfaden. Ist meiner Ansicht nach nicht nur konsistenter, sondern auch einfacher (der Sinn eines Paketmanagers ist ja nun mal die möglichst einfache Handhabe von Paketen).
 
OP
M

mradlmaier

Newbie
Hallo,

Es geht eigentlich konkret um den usb-rndis-lite Treiber von svn. Da gibt es auch ein .rpm, welches aber die Internet-Freigabe von Windows Mobile (noch) nicht unterstützt. Also muss ich von der Quelle installieren. Das möchte ich dann aber korrekt ins System eingebunden haben. Das scheint aber nicht der Fall zu sein, wenn ich von Quelle installiere, weil dann synce-kpm vom .rpm installiere, funktioniert das nicht. Wenn ich synce-kpm und Abhängige Pakete entsprechend der Anleitung auf synce.org von den Quellen installiere, funktioniert. Und der usb-rndis-lite Treiber von svn hat kein uninstall target. Im Effekt habe ich dann ein System, dass Teilweise am Paketmanager vorbei installiert ist, zudemnoch dazu ein Treiber. Und das würde ich gerne vermeiden...

Grüße,
Michael :???:
 
OP
M

mradlmaier

Newbie
oxe1976 schrieb:
Generell sollte man RPMs bevorzugen.
Man kommt aber manchmal nicht drumherum etwas selbst zu kompilieren und zu installieren (z.B. neuere Version ausprobieren, wo es noch kein entsprechendes RPM gibt ...). Ich installiere sie aber meist in einen "privaten" Bereich, wo ich keine Root Rechte brauche ($HOME/programme).

Meist geht das configure so:
Code:
./configure --prefix=$HOME/programme
make
make install

Habe meine PATH variable entsprechend erweitert.
Gut, das löst zwar nicht unbedingt das Problem mit dem deinstallieren, aber so hat man den Kram vom System getrennt.

Würde das prefix auch für Treiber funktionieren, wie z.B. usb-rndis-lite und wenn ja, wie mache lch das mit der PATH-Variable?
 
OP
M

mradlmaier

Newbie
Kann ich leider nicht mehr ausprobieren, auf jeden Fall hat make checkinstall fehlgeschlagen.
Zwischenzeitlich hat der automatische suse update mein system upgedatet, und seit her fällt die Installation der synce-tarballs und ihrer Abhängigkeiten von Quelle schon bei ./configure fehl. Kann also nicht mehr reproduzieren, was genau bei checkinstall damals fehlgeschlagen hat.
Vorläufig werde also die Synchronisation sein lassen.
Der usb-rndis-lite Treiber von svn lies sich nämlich noch installieren, und mit dem kann ich via UMTS Modem surfen, und wm5torage auf windows mobile schaltet das Handy auf usb-speicher um, so dass ich die Speicherkarte lesen und schreiben kann.

Michael

Grüße,
Michael
 
Oben