当我尝试在Borland中使用OpenCv 2.3时,我将这些文件夹添加到项目中:
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'
等等。
我怎样才能解决这个问题?
最佳答案
我认为您遇到的问题是Borland无法本地链接到Visual C++库,如果您下载的是OpenCV 2.3二进制版本,这就是您所拥有的。您可以尝试使用Borland的implib
。请参阅此StackOverflow answer。但是,我认为这有一个告诫,由于在DLL中使用类时Visual C++会破坏名称,因此代码只能是C代码。由于OpenCV确实使用了类,因此我怀疑implib
是否可以工作。
因此,我建议使用CMake与Borland C++目标一起构建OpenCV。这是从CMake中获得的GUI捕获。
看看this构建指南。
关于c++ - Borland C++ 2009中的OpenCV,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/7966505/