2012-11-02 65 views
4

安裝的OpenCV-2.4.3當我嘗試向CMake在Ubuntu上的OpenCV-2.4.3,我得到這個錯誤:錯誤在Ubuntu

CMake Error: The following variables are used in this project, but they are set to NOTFOUND. Please set them or make sure they are set and tested correctly in the CMake files: CUDA_nvcuvid_LIBRARY (ADVANCED)

然後,我已禁用 「with_cuda」 在CMakeLists選項。 TXT。之後,我得到這樣的警告:

The source directory is the same as binary directory. "make clean" may damage the source tree

我沒有「的Makefile」我的生成文件夾,所以我不能安裝OpenCV-2.4.3。

+0

你能指定你的系統嗎? –

+0

我使用ubuntu和「eclipse indigo」。 – Pekaziz

回答

0

我認爲這可能是在Ubuntu上安裝OpenCV的更簡單快捷的方式: install OpenCV using apt-get
(你不必自己編譯它。)

+1

我不明白downvote。他提供的是有效的解決方案 – jlengrand

+0

它可以避免這個問題;這不是一個解決方案 – CrackerJack9

3

你在哪裏執行了你的make clean

如果您正確執行,您會發現建議您創建一個文件夾來存儲將要編譯的所有內容。

通常遊戲,你這樣做,通過執行

mkdir build 

你不應該在以下this guide一步一步的任何問題。

,你可以看到,CMake的命令是:

cmake -D CMAKE_BUILD_TYPE=RELEASE -D CMAKE_INSTALL_PREFIX=/usr/local -D BUILD_PYTHON_SUPPORT=ON -D BUILD_EXAMPLES=ON .. 

的..在結束是非常重要的,因爲這意味着你應該在目錄中要建立的一切執行命令。

如果您直接將cmake運行到源目錄中,則可能需要解壓該包並重新開始;)。

如果您沒有NVidia圖形卡,那麼更改CUDA的變量是正確的。

您指出的最後一條消息是警告,而不是錯誤。你可以按照我之前說的解決它。

如果你只想使用OpenCV,而不是爲它開發,那麼你和Barnabas一樣都會直接使用你的包管理器。

在這種情況下,follow his link

+0

我只是不知道爲什麼我的回答被拒絕:) –

+0

可能是因爲人們發現它超出了範圍。 。 。它不是。對不起。儘管我在答案中明確提到了你。我不喜歡這種令人沮喪的事情,給太多的人給陌生的人。 – jlengrand

+0

是的,我看到了,謝謝你引用我+1。是的,也許下調會有點早。 –

10

我剛纔已經解決了這個問題。 操作系統:Linux Mint 13/64bit,CUDA 5.0。它也應該在Ubuntu上運行。

問題是你需要創建一個鏈接到libnvcuvid.so位於/usr/lib/nvidia-current//usr/lib/

請在終端中執行此:

su -c 'ln -s /usr/lib/nvidia-current/libnvcuvid.so /usr/lib/libnvcuvid.so && ln -s /usr/lib/nvidia-current/libnvcuvid.so.1 /usr/lib/libnvcuvid.so.1' 

建立了沒有錯誤生成的文件。我還會補充一點,你不應該使用apt-get for OpenCV,因爲存儲庫包含舊版本的庫。

+0

在我的系統上(Ubuntu 12.10)/usr/lib/libnvcuvid.so已到位,所以我只需要「sudo ln -s /usr/lib/nvidia-current/libnvcuvid.so.1/usr/lib/libnvcuvid。 so.1" –