我正在尝试使用新的OpenCV Block和Cinder 0.8.2.我使用TinderBox在我的用户目录中的某个地方设置项目,并且刚刚尝试设置基本的视频捕获例程.我将OpenCv Block作为一个组添加到项目中.
cv::Mat input( toOcv( capture.getSurface() ) )
Run Code Online (Sandbox Code Playgroud)
当我添加此代码时,我收到以下错误
Undefined symbols:
"cv::fastFree(void*)", referenced from:
cv::Mat::release() in ColourDanceApp.o
ld: symbol(s) not found
collect2: ld returned 1 exit status
Run Code Online (Sandbox Code Playgroud)
我把上面的代码分解成了
Surface frame;
frame = mCap.getSurface();
cv::Mat matrix;
matrix = toOcv( frame );
cv::Mat input( matrix );
Run Code Online (Sandbox Code Playgroud)
并发现我收到此错误:
cv::Mat matrix; (and a whole bunch of errors)
Run Code Online (Sandbox Code Playgroud)
自从我完成任何C++以来已经有一段时间了,但我从这里得出结论,它的项目设置问题是它主要来自OpenCV示例的代码.它走得那么远的事实告诉我Cinder路径是好的.没有任何帮助
这是一个老问题,但这是解决方案
http://forum.libcinder.org/topic/how-to-use-cinderblocks-in-xcode
1) 将用户标题搜索路径设置为:
"$(CINDER_PATH)/blocks/opencv/include"
Run Code Online (Sandbox Code Playgroud)
2) 设置其他链接器标志以包含您要使用的 .a 文件。例如:
"$(CINDER_PATH)/blocks/opencv/lib/macosx/libopencv_core.a"
Run Code Online (Sandbox Code Playgroud)
它适用于从 Github 下载的最新版本的 Cinder。
| 归档时间: |
|
| 查看次数: |
2153 次 |
| 最近记录: |