hvordan fjerner Jeg CMake etter at jeg har installert den fra kilden?

TL; DR: Kjør sudo make uninstall i katalogen der du kjørte sudo make install før.

du fulgte denne metoden for å installere En annen versjon Av CMake. Dette er å si at du avinstallerte versjonen fra Ubuntus pakkebehandling og manuelt lastet ned, kompilert og installert det selv fra kildekoden.

Forutsatt at du kunne følge disse instruksjonene, er versjonen Av CMake levert Av Ubuntus pakkebehandling (via pakken cmake) allerede avinstallert. Fordi versjonen du har installert nå, ikke er levert Av Ubuntus pakkebehandling, men i stedet den versjonen du kompilerte og installerte selv, kjører sudo apt-get purge cmake igjen, fjerner den ikke.

siden du installerte cmake ved å kompilere den og deretter kjøre sudo make install, er løsningen for deg å:

  1. Bruk cd for å gå tilbake til katalogen der du kjørte den kommandoen.
  2. Kjør sudo make uninstall.

Ikke all programvare som kan installeres ved å kjøre make install har et tilsvarende uninstall mål som lar deg kjøre make uninstall for å fjerne det. Men CMake støtter dette.1

hvis du har slettet mappen der du kjørte sudo make install, eller på annen måte endret den, er det beste alternativet å gjenoppbygge og installere det på nytt (pass på at du bruker nøyaktig samme versjon) for å få tilbake muligheten til å kjøre sudo make uninstall. Det vil si at du vil følge de samme installasjonstrinnene, fra den samme .tar.gz – filen og sende alle de samme alternativene du brukte (hvis noen) til ./bootstrap. Hvis du bare kjørte ./bootstrap uten argumenter etter det, gjør du det igjen. Etter å ha kjørt sudo make install igjen, som ville (ufarlig) overskrive filene som allerede var installert med kopier av seg selv, vil du da kunne bruke sudo make uninstall.

En annen mulig tilnærming, som jeg sterkt fraråder deg fra å gjøre, ville være å prøve å finne ut nøyaktig hvilke filer og kataloger som ble opprettet i installasjonen, og å prøve å fjerne bare de filene og katalogene, men ingen andre. Hvis du ikke passerte --prefix til ./bootstrap når Du kompilerte CMake, installerte den filer i /usr/local, men det er ikke det eneste programmet som bruker den katalogen. Det ville ha installert filer i de forskjellige underkatalogene /usr/local, for eksempel bin og lib(og andre), så bortsett fra situasjonen der du ikke vet noe annet ble installert i /usr/local, krever dette alternativet mye arbeid.

1 det er lett å bli forvirret om hvorvidt Du kan avinstallere CMake ved å kjøre sudo make uninstall fordi, som standard, når Du bruker CMake å lage bygge skript for din egen programvare, ingen uninstall mål genereres med mindre du eksplisitt ber om en. Imidlertid Er CMake selv designet for å enkelt avinstalleres, og kildekoden definerer disse avinstalleringsmålene for seg selv. I Makefile generert fra å kjøre ./bootstrap kan du se:

#=============================================================================# Target rules for targets named uninstall# Build rule for target.uninstall: cmake_check_build_system $(MAKE) -f CMakeFiles/Makefile2 uninstall.PHONY : uninstall# fast build rule for target.uninstall/fast: $(MAKE) -f CMakeFiles/uninstall.dir/build.make CMakeFiles/uninstall.dir/build.PHONY : uninstall/fast

Du kan også søke etter avinstallere støtte I Sine CMakeLists.txt-fil.

for å være sikker, testet jeg dette med CMake 3.9.0, og det fungerer. Målet uninstall genereres og kjører sudo make uninstall arbeider for å avinstallere CMake.

Legg igjen en kommentar

Din e-postadresse vil ikke bli publisert.