我已将包管理中的 OpenCV C 库安装到我的 Kubuntu 9.10 中。我编写了一个使用这些库的小型图像修改程序,但我无法编译它,因为每次我尝试编译时都会收到错误消息,即无法找到 OpenCV 库中的函数。
这些头文件在文件夹中,/usr/include/opencv/
但编译器仍然说找不到函数。
我试图通过基本的方式将它们包括在内
#include <highgui.h>
#include <cv.h>
netbeans 中的命令(并且我已将 netbeans 设置为从该特定目录搜索头文件),并且还尝试将它们包含在完整路径中。
#include </usr/include/opencv/highgui.h>
#include </usr/include/opencv/cv.h>
此外,我尝试在控制台中编译我的源文件(包含完整路径),但我再次收到相同的错误消息,即无法找到这些库中的函数。
编辑:
我得到的错误信息是
undefined reference to 'function_name'
对于我尝试从该 opencv 库中使用的每个函数,我都会收到该错误。
知道如何解决这个问题吗?
编辑二:
如果其他人正在使用 netbeans 6.7.1 并遇到同样的问题,这是从另一个网站粘贴的解决方案副本:
在这里,我假设您已经手动或通过包管理成功安装了 opencv 库。
- 打开 Netbeans,然后执行以下操作:选择工具 -> 选项 -> C/C++ -> 代码帮助 -> 添加包含目录(对我来说,/usr/local/include/opencv)
- 创建新项目,然后:右键单击项目名称 -> 属性 -> 构建 -> C/C++ 编译器 -> 包含目录 包含目录:/usr/local/include/opencv
- 右键单击项目名称 -> 属性 -> 构建 -> 链接器 -> 包含目录:/usr/local/include/opencv 附加选项:-I/usr/local/include/opencv -L/usr/local/lib -lcxcore -lcv -lhighgui -lcvaux -lml
然后编写程序并编译!!