2013-08-20 51 views
5

Linux的味道:Debian的(緊縮邦)「的OpenCV」 被認爲是NOT FOUND

出現問題:當試圖用下面的命令來構建cvblobs

cd ~/cvblob 
cmake . 

錯誤:

CMake Error at cvBlob/CMakeLists.txt:20 (find_package): 
Found package configuration file: 

/usr/local/share/OpenCV/OpenCVConfig.cmake 

but it set OpenCV_FOUND to FALSE so package "OpenCV" is considered to be 
NOT FOUND. 


-- Configuring incomplete, errors occurred! 
+0

可能是因爲安裝的版本太舊,您可以設置相關的路徑。版本決定由項目的配置文件進行搜索。 cvblob是否在find_package調用中請求特定的opencv版本? – languitar

回答

1

嗯,我遇到類似的問題時,我正在與其他一些開源人臉檢測模塊,而不是cvblobs。 其實你會發現,錯誤的信息,這些行之前,有:

CMake Warning at /usr/local/opencv-2.4.13/cmake/OpenCVConfig.cmake:163 (message): 
    Found OpenCV Windows Pack but it has not binaries compatible with your configuration. 

    You should manually point CMake variable OpenCV_DIR to your build of OpenCV library. 
Call Stack (most recent call first): 
    CMakeLists.txt:57 (find_package) 


CMake Warning at CMakeLists.txt:57 (find_package): 
    Found package configuration file: 

    /usr/local/opencv-2.4.13/cmake/OpenCVConfig.cmake 

but it set OpenCV_FOUND to FALSE so package "OpenCV" is considered to be NOT FOUND. 

所以,你可能會發現,它要求你手動指出的目錄你建立OpenCV庫的版本。 對於我來說,我的源代碼是在

/usr/local/opencv-2.4.13/

,但我做和

/usr/local/opencv-2.4.13/release/

安裝OpenCV我的發佈版本,所以我使用: cmake -D OpenCV_DIR=/usr/local/opencv-2.4.13/release/ .. ,一切工作:)

0

當我編譯一個使用OpenCV lib的程序,視覺2.4.8時,發生類似的錯誤,當我手動指向opencv/build,visio 3.1.0的Opencv_DIR路徑時,出現像你一樣的錯誤。

然後我點Opencv_DIRopencv/build的路徑,其視野與所用程序相同。有用。

1

其中一個原因可能是另一個路徑中的另一個OpenCV軟件包,它是以前安裝的。就我而言,我已經在Anaconda包中安裝了OpenCV for Python,並且CMake一直希望將該包引薦給我。

我只是說:

set(OpenCV_FOUND 1) 

CMakeList.txt文件中,這個命令只是重寫你可能已經安裝了其他的包。這是爲我工作CMakeList文件的最終版本是這樣的:

set(OpenCV_FOUND 1) 
find_package(OpenCV 2.4.13 REQUIRED PATHS "C:/opencv") 
set(SOURCE_FILES main.cpp) 
add_executable(OpenCV_Test ${SOURCE_FILES}) 

注:

1 - 我現在用的是CMakeList.txt文件克利翁IDE

2 - 我使用它在windows下。也許,如果你使用其他操作系統

3-你也需要改變OpenCV的版本,如果你使用其他版本