Io corro Kubuntu 11.10 (w/KDE 4.8)Rimozione di tutte le librerie OpenCV installati
Prima di leggere tutto questo:
voglio solo eliminare ogni traccia di OpenCV dal mio sistema, in modo che posso ripartire ..
L'intera storia
ho installato python-OpenCV e libopencv (2,1 credo) da https://launchpad.net/~gijzelaar/+archive/opencv2 molto tempo fa. Ho solo provato python-opencv in quel momento, che ha funzionato perfettamente (non ho tentato di usare il codice C++ usando OpenCV)
Poi ho provato di recente a installare OpenCV 2.3.1 dal sorgente, che è stato installato ma durante la compilazione del mio Codice C++ (usando OpenCV), mi ha dato errori su libgtk non installato e ha anche rotto il mio codice python opencv che funzionava bene prima
Così ho installato le librerie libgtk2-dev e ho compilato e installato nuovamente OpenCV 2.3.1 ..
Si è verificato ancora l'errore, quindi ho eliminato la directory OpenCV non indirizzata da cui stavo eseguendo cmake, make, ecc. Non ho fatto disinstallare (che ora mi rendo conto è stato il mio errore)
e invece installato il pacchetto ubuntu OpenCV 2.3 (con tutte le dipendenze) da qui: https://launchpad.net/~gijzelaar/+archive/opencv2.3
Ora il problema è che ancora ottenere lo stesso errore quando compilo il mio codice C++ che include OpenCV, e l'errore punta ancora al mio (soppresso) cartella di origine 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
Come si può vedere l'errore punta ancora alla directory da dove avevo compilato ed installato OpenCV
C'è un modo per rimuovere completamente tutte le tracce della mia versione compilata di OpenCV e semplicemente mantenere i file dal pacchetto ubuntu? Come ho detto prima non ho 'make uninstall' e hanno anche (stupidamente) soppresso il
EDIT install-manifest: ho eseguito di nuovo il gestore dei pacchetti, e ha scoperto che non tutti i pacchetti OpenCV dalle ppa avevano ottenuto installato correttamente. Così ho fatto un sudo apt-get install nuovo OpenCV, ed ora ottengo questo errore:
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)
voglio solo eliminare ogni traccia di OpenCV dal mio sistema, in modo da poter ripartire
Grazie! Proprio quello che stavo cercando. Ho disinstallato i pacchetti, quindi ho eseguito sudo find/-name "* opencv *" -exec rm -i {} \; quindi reinstallato i pacchetti. Risolto il mio ultimo errore eseguendo sudo dpkg -i --force-overwrite path-to-package. OpenCV sembra funzionare ora, anche se devo ancora provarlo a fondo. Python-OpenCV funziona come prima. – flak37
Felice di poterti aiutare! – mevatron
Un altro suggerimento correlato sarebbe quello di installare OpenCV in una macchina virtuale la prossima volta che è necessario utilizzarlo; in questo modo quando è il momento di disinstallare tutto ciò che devi fare è distruggere la VM e * poof *, hai finito. – the911s