Suppression de tous les fichiers OpenCV installés
je suis sous Kubuntu 11.10 (w/ KDE 4.8)
Avant de lire tout cela :
je veux juste enlever toutes les traces D'OpenCV de mon système, donc je peux recommencer..
L'histoire
j'ai d'abord installé python-opencv et libopencv (2.1 je pense) à partir dehttps://launchpad.net / ~gijzelaar / +archive/opencv2 Il y a longtemps. J'ai seulement essayé python-opencv à ce moment-là, ce qui a fonctionné parfaitement (Je n'ai pas essayé d'utiliser du code C++ en utilisant OpenCV)
puis j'ai récemment essayé D'installer OpenCV 2.3.1 à partir des sources, qui a été installé, mais en compilant mon propre code C++ (en utilisant OpenCV), il m'a donné des erreurs sur libgtk non installé et a également cassé mon code Python opencv qui fonctionnait bien plus tôt
J'ai donc installé les bibliothèques libgtk2-dev et compilé et installé OpenCV 2.3.1 à nouveau..
l'erreur s'est quand même produite, donc j'ai supprimé le répertoire OpenCV non identifié à partir duquel j'exécutais cmake, make ,etc. Je n'ai PAS désinstaller (je me rends compte maintenant était mon erreur)
et au lieu installé ubuntu opencv 2.3 paquet (avec toutes les dépendances) à partir d'ici : https://launchpad.net/~gijzelaar/+archive/opencv2.3
maintenant, le problème est que j'obtiens toujours la même erreur quand je compile mon code C++ qui inclut OpenCV , et l'erreur pointe toujours vers mon dossier source (supprimé) OpenCV :
OpenCV Error: Unspecified error (The function is not implemented. Rebuild the library with Windows, GTK+ 2.x or Carbon support. If you are on Ubuntu or Debian, install libgtk2.0-dev and pkg-config, then re-run cmake or configure script) in cvNamedWindow, file /home/anant/opencv/OpenCV-2.3.1/modules/highgui/src/window.cpp, line 275
terminate called after throwing an instance of 'cv::Exception'
what(): /home/anant/opencv/OpenCV-2.3.1/modules/highgui/src/window.cpp:275: error: (-2) The function is not implemented. Rebuild the library with Windows, GTK+ 2.x or Carbon support. If you are on Ubuntu or Debian, install libgtk2.0-dev and pkg-config, then re-run cmake or configure script in function cvNamedWindow
comme vous pouvez le voir l'erreur pointe toujours vers le répertoire d'où j'avais compilé et installé OpenCV
y a-t-il un moyen de supprimer complètement toutes les traces de ma version compilée D'OpenCV et de simplement conserver les fichiers du paquet ubuntu? Comme je l'ai mentionné plus tôt, je n'ai pas 'Make uninstall' et j'ai aussi (bêtement) supprimé le install-manifest
EDIT: J'ai relancé le gestionnaire de paquets et j'ai découvert que tous les paquets opencv de l'app n'avaient pas été installés correctement. Donc j'ai fait un sudo apt-get install opencv à nouveau, et maintenant j'ai cette erreur:
Unpacking libopencv2.3 (from .../libopencv2.3_2.3.1-3_amd64.deb) ...
dpkg: error processing /var/cache/apt/archives/libopencv2.3_2.3.1-3_amd64.deb (--unpack):
trying to overwrite '/usr/lib/libopencv_video.so.2.3.1', which is also in package libopencv-video2.3 2.3.1-4ppa1
dpkg-deb: error: subprocess paste was killed by signal (Broken pipe)
Unpacking opencv (from .../opencv_2.3.1-3_amd64.deb) ...
dpkg: error processing /var/cache/apt/archives/opencv_2.3.1-3_amd64.deb (--unpack):
trying to overwrite '/usr/bin/opencv_haartraining', which is also in package libopencv-core-dev 2.3.1-4ppa1
dpkg-deb: error: subprocess paste was killed by signal (Broken pipe)
Errors were encountered while processing:
/var/cache/apt/archives/libopencv2.3_2.3.1-3_amd64.deb
/var/cache/apt/archives/opencv_2.3.1-3_amd64.deb
E: Sub-process /usr/bin/dpkg returned an error code (1)
je veux juste enlever toutes les traces D'OpenCV de mon système, donc je peux recommencer
5 réponses
par défaut, en construisant OpenCV à partir de la source, il placera sa sortie dans /usr/local/lib
et /usr/local/bin
. Bien que, à en juger par vos messages d'erreur, on dirait qu'il a placé les bibliothèques /usr/lib
et les fichiers binaires /usr/bin
, donc vous pouvez aussi vérifier là-bas.
vous pouvez aussi utiliser Linux trouver la commande. Ainsi, pour trouver toutes les bibliothèques OpenCV vous pouvez faire ce qui suit (cela peut prendre un certain temps):
$> sudo find / -name "*opencv*" -exec rm -i {} \;
La commande ci-dessus va trouver n'importe quel fichier contenant opencv dans le nom, et vous invite à le retirer. Comme toujours, soyez prudent lorsque vous supprimez des choses manuellement!
une autre option pourrait être de compiler manuellement OpenCV à nouveau (exactement comme vous l'avez fait avant), make install
pour créer le manifeste d'installation, puis essayer make uninstall
pour voir s'il va se nettoyer tout seul.
j'Espère que ça aide! :)
Vous pouvez faire un sudo make uninstall
pour une désinstallation propre
Si vous avez le répertoire de construction, il est alors recommandé d'exécuter:
$ sudo make uninstall
à partir du répertoire de construction, comme par @Navid 's réponse
mais il en restera peu .so* files somewhere
Pour supprimer complètement tous ces fichiers, faire:
$ sudo rm /usr/local/{bin, lib}/*opencv*
/usr/local
est ce que nous définissons normalement CMAKE_INSTALL_PREFIX
lors de l'exécution cmake
. Remplacer selon la façon dont vous avez exécuté cmake
pour supprimer tous les fichiers et dossiers sans "interaction", utilisez la commande suivante:
sudo find / -name "*opencv*" -exec rm -rf {} \;
attention: il n'est pas conseillé d'exécuter la suppression "recursive" et "force".
si opencv est installé en utilisant sudo make install
commande sur source puis allez dans le dossier de compilation et utilisez sudo make uninstall
et il devrait désinstaller opencv