2011-11-01 85 views
1

當我嘗試在Borland公司使用OpenCV的2.3,我這些文件夾添加到項目中:OpenCV的在用Borland C++ 2009年

C:\Program Files\opencv2.3.1\build\include\opencv2 
C:\Program Files\opencv2.3.1\include\opencv 

,包括

opencv_core231.lib 
opencv_highgui231.lib 
opencv_video231.lib 
opencv_imgproc231.lib 

錯誤然後變成一堆

[BCC32 Error] complex(194): E2316 '_fm_atan2l' is not a member of 'std' 
[BCC32 Error] complex(199): E2316 '_fm_cosl' is not a member of 'std' 

等文件複雜。

我該如何解決這個問題?

回答

1

我認爲你遇到的問題是Borland無法直接鏈接到Visual C++庫,如果你下載了OpenCV 2.3二進制版本,那就是你所擁有的。你可以嘗試使用Borland的implib。看到這個StackOverflow answer。不過,我認爲這有一個警告,即代碼只能是C代碼,因爲在DLL中使用類時,Visual C++損壞了名稱。由於OpenCV使用類,我懷疑implib將工作。

因此,我建議使用CMake來構建OpenCV與Borland C++目標。這裏是從CMake中看到的應用程序的GUI捕獲。

CMake Borland target

看看this製作指南。

+0

當我試圖寫在命令行「make」(後CMAKE)它成爲相同的錯誤文件複雜.. – fen1ksss

+0

在我的C + + Builder中有什麼錯誤? – fen1ksss

+0

以前我試圖使用OpenCV b5a,一切都編譯好。 – fen1ksss