[置顶] opencv 2.4.3的静态链接库(标准的共18个)

这几天跑opencv 自带的flan例程结果总调试的时候出现error LNK2001的错误,弄的我很毛,因为个人感觉是库都添加了,唉,人有的时候就是太确信自己和相信前人了。

现有的opencv网上的配置方案中,一般添加的静态链接库都是12-14个左右,如果分为Debug和Release就是24-28个左右,其实对于opencv2.4.3这个是不全的。根据热心的网友说静态链接库是17个,但是我在网上找了很久也没有找到某人的库所有的全加了,后来灵机一动发现我陷入了误区,其实我们从安装opencv的目录下不就能看到所有的库嘛!opencv2.4.3的标准静态链接库是18个,如果计算Debug和Release的区别就是36个,因为我安装了cmake,所以算上它在那个目录有37个文件如下图

[置顶] opencv 2.4.3的静态链接库(标准的共18个)_第1张图片



个人感想:以后无论干什么,还是知根知底的好,用了几个月的opencv,竟然还没认真看过他的安装目录,不知道会被多少人嘲笑了。我做深深的检讨,切记。

忘各位同胞记住我的这个教训。以后也多看看CV的安装目录,无论是doc、lib、还是include总会有意外的收获的。

了解一个东西,才能更好的运用他!

另外,笔者顺便说一下,有的时候感觉很简单的错误,比如cvloadimage没问题,但是imread就有问题,如果你百思不得其解,很有可能是库文件添加不对。

这种情况会出现在你从IPL到Mat的转型中。

个人理解IPL类型对于库要求不严格,如果你以#pragma comment( lib, "opencv_******.lib" )的形式添加的话无论添加在Debug还是Release下都默认可以的。

但是如果Mat类型就需要对这个要求很严格:即Debug必须加Debug对应的库,Release必须加Release对应的库,否则报错。

Debug库的后缀都是带d的lib

eg:opencv_core243d.lib 

Release库都不带d后缀

eg:opencv_core243.lib

至少我的工程出现过以上这个问题。所以给予大家一个参考,如有不对还望留言。

你可能感兴趣的:(学习,opencv,标准,库,vs2008)