2012-02-14 17 views
18

मैं Kubuntu 11.10 चल रहा हूँ (w/केडीई 4.8)सभी स्थापित OpenCV libs निकाला जा रहा है

इससे पहले कि आप यह सब पढ़ें:

मैं सिर्फ अपनी प्रणाली से OpenCV के सभी निशान निकालना चाहते हैं, तो मैं यह कर सकते हैं नए सिरे से शुरू ..

पूरी कहानी

मैं पहली बार स्थापित अजगर-opencv और https://launchpad.net/~gijzelaar/+archive/opencv2 से एक लंबे समय पहले libopencv (2.1 मुझे लगता है कि)। मैंने केवल उस समय पाइथन-ओपनसीवी की कोशिश की, जिसने पूरी तरह से काम किया (मैंने ओपनसीवी का उपयोग कर सी ++ कोड का उपयोग करने का प्रयास नहीं किया)

फिर मैंने हाल ही में स्रोत से ओपनसीवी 2.3.1 इंस्टॉल करने का प्रयास किया, जो स्थापित हो गया लेकिन मेरे स्वयं को संकलित करते समय सी ++ कोड (OpenCV का उपयोग), यह मेरे स्थापित नहीं libgtk के बारे में त्रुटियों दे दी है और यह भी मेरी अजगर opencv कोड को तोड़ दिया जो ठीक पहले चल रहा था

तो मैं libgtk2-देव पुस्तकालयों स्थापित किया है और संकलित और फिर OpenCV 2.3.1 स्थापित ..

त्रुटि अभी भी हुई है, इसलिए मैंने अनारक्षित ओपनसीवी निर्देशिका को हटा दिया जिससे मैं सेमेक, मेक इत्यादि चला रहा था। मैं नहीं यहां से स्थापना रद्द करें (मैं अब जो एहसास मेरी गलती थी)

और बदले ubuntu opencv 2.3 पैकेज (सभी निर्भरता के साथ) स्थापित किया: https://launchpad.net/~gijzelaar/+archive/opencv2.3

अब समस्या मैं अब भी वही त्रुटि जब मिल जाता है मैं अपने सी ++ कोड जो OpenCV शामिल संकलन, और त्रुटि अभी भी मेरे (हटाया गया) 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 

आप देख सकते हैं त्रुटि अभी भी मैं कहाँ संकलित और स्थापित किया था OpenCV

से निर्देशिका के लिए अंक

क्या ओपनसीवी के मेरे संकलित संस्करण के सभी निशान पूरी तरह से निकालने का कोई तरीका है और बस फ़ाइलों को ubuntu पैकेज से रखें? मैं जैसा कि पहले उल्लेख मैं 'की स्थापना रद्द कर' नहीं था और यह भी (मूर्खता) नष्ट कर दिया है स्थापित-प्रकट

संपादित करें: मैं पैकेज प्रबंधक फिर से भाग गया, और पाया कि नहीं पीपीए से सभी opencv संकुल हो गया था ठीक से स्थापित किया गया। तो मैंने किया था एक sudo apt-get opencv फिर से स्थापित है, और अब मैं इस त्रुटि मिलती है:

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) 

मैं सिर्फ अपनी प्रणाली से OpenCV के सभी निशान निकालना चाहते हैं, तो मैं नए सिरे से

उत्तर

34

शुरू कर सकते हैं डिफ़ॉल्ट रूप से , स्रोत से OpenCV का निर्माण करते समय, यह /usr/local/lib और /usr/local/bin में इसका आउटपुट रखेगा। हालांकि, आपके त्रुटि संदेशों से निर्णय लेते हुए, ऐसा लगता है कि यह पुस्तकालयों को /usr/lib और /usr/bin में द्विआधारी रखता है, ताकि आप वहां भी जांच सकें।

आप लिनक्स find कमांड का भी उपयोग कर सकते हैं। तो, सभी OpenCV पुस्तकालयों आप निम्न कर सकते लगता है (इसमें कुछ समय लग सकता है):

$> sudo find/-name "*opencv*" -exec rm -i {} \; 

उपरोक्त आदेश किसी भी नाम पर opencv युक्त फ़ाइल मिलेगा, और इसे हटाने के लिए संकेत देगा। हमेशा की तरह, चीजों को मैन्युअल रूप से हटाते समय सावधान रहें!

एक अन्य विकल्प make install प्रकट स्थापित बनाने के लिए, और फिर देखने के लिए अगर यह अपने आप को साफ होगा make uninstall कोशिश मैन्युअल रूप से पुन OpenCV संकलित करने के लिए हो सकता है (बिल्कुल जो आपने पहले),।

आशा है कि मदद करता है! :)

+1

धन्यवाद की स्थापना रद्द करना चाहिए! मुझे इसकी ही खोज थी। मैंने संकुल को अनइंस्टॉल किया, फिर sudo find/-name "* opencv *" -exec rm -i {} \; चलाया; फिर संकुल को पुनर्स्थापित किया। Sudo dpkg -i --force- पथ-टू-पैकेज को ओवरराइट करके चलाकर मेरी पिछली त्रुटि को ठीक करें। ओपनसीवी अब काम करता प्रतीत होता है, हालांकि मुझे अभी तक इसका परीक्षण नहीं करना है। पायथन-ओपनसीवी पहले की तरह काम कर रहा है। – flak37

+0

खुशी मैं मदद कर सकता था! – mevatron

+0

अगली बार जब आप इसे उपयोग करने की ज़रूरत है तो एक और संबंधित सुझाव ओपनसीवी को वर्चुअल मशीन में स्थापित करना होगा; इस तरह जब आप सभी को अनइंस्टॉल करने का समय है तो आपको वीएम और * पोफ * को नष्ट करना होगा, आप कर चुके हैं। – the911s

4

आप एक साफ स्थापना रद्द करें के लिए एक sudo make uninstall कर सकते हैं

+0

मेरे मामले में, और शायद flak37 के, 'opencv' को अनइंस्टॉल करने के लिए उपयोग करने में त्रुटि हुई थी। – ryanjdillon

+0

काम नहीं करता ......... – stack5

2

, नीचे दिए गए आदेश "बातचीत" के बिना सभी फ़ाइलों और फ़ोल्डरों को निकालने के लिए उपयोग करने के लिए आदेश में:

sudo find/-name "*opencv*" -exec rm -rf {} \; 

चेतावनी: यह नहीं है "रिकर्सिव" और "बल" हटाने के लिए सलाह दी जाती है।

+1

यदि कोई और इसे देखता है (अपवित्र?) उत्तर और इसे चलाने की सोच रहा है - कृपया नहीं। इसके बजाए कुछ ऐसा करें (नोट: ऊपरी/निचले के लिए जांच कर रहे हैं, दोनों हैं): 'sudo find/\ (-name "* opencv *" -o -name "* ओपनसीवी *" \) -प्रिंट 2>/dev/null>/tmp/out.txt' और उन चीजों के लिए मैन्युअल रूप से '/ tmp/out.txt' का निरीक्षण करें जिन्हें आप निकालना चाहते हैं। उपरोक्त आदेश चलाना थोड़े पागल हो जाएगा। कोशिश करने के लिए एक और चीज (लेकिन पूर्ण नहीं है) 'पता -i opencv' है। आप जल्दी से निश्चित रूप से ध्यान देंगे कि ऐसी चीजें हैं जिन्हें आप निकालना नहीं चाहते हैं। – michael

0

opencv स्रोत पर sudo make install आदेश का उपयोग कर स्थापित किया गया है, तो निर्माण फ़ोल्डर में जाने के लिए और sudo make uninstall उपयोग करें और यह opencv

संबंधित मुद्दे