2012-07-12 103 views
0

我有一臺戴爾XPS M1530運行Windows 7。我安裝了虛擬盒並創建了一個Ubuntu 12.04安裝。然後我按照here的描述安裝openCV。這似乎非常相似的方向here,但是當我嘗試在第二個鏈接描述對測試程序圖像conversion.c運行G ++,我得到下面的輸出:openCV安裝/庫問題

[email protected]:~/test$ g++ `pkg-config opencv --cflags --libs` image-conversion.c -o image-conversion 
/tmp/ccoPBxUv.o: In function `main': 
image-conversion.c:(.text+0x1d): undefined reference to `cvLoadImage' 
image-conversion.c:(.text+0x41): undefined reference to `cvSaveImage' 
image-conversion.c:(.text+0x4d): undefined reference to `cvReleaseImage' 
collect2: ld returned 1 exit status 

然而,當我使用第一個鏈接提供的測試程序,一切正常。所以我的問題是,我不瞭解安裝過程,或者編譯過程中讓示例在第二個鏈接中不起作用。

回答

1

錯誤似乎是鏈接錯誤,我的猜測是g ++沒有找到庫。您可以嘗試將libopencv.so的路徑添加到LD_LIBRARY_PATH。還要確保opencv的版本與示例匹配。這三個函數是較舊的c風格界面。你也可以在命令行運行「pkg-config opencv --cflags --libs」。這將擴展它並告訴你它在哪裏尋找這些東西,然後你可以四處尋找,看看事情是否匹配。有時候你需要#include opencv2/highgui.hpp或者其他的東西。有時候「g ++ -v」也有幫助。對不起,我不能直接給你一個答案,祝你好運。