每个openCV 3.1.0库的三个实例
Three instances of each openCV 3.1.0 library
我能够按照这里(http://charliegerard.github.io/blog/Installing-OpenCV/)的说明安装和构建openCV。但是在成功创建动态库之后,我注意到在lib目录中有3个实例,每个库以以下格式命名:
libopencv_LibName.3.1.0。dylib
libopencv_LibName.3.1.dylib
libopencv_LibName.dylib
库的截图
我的下一步是只挑出头文件和库,我需要为我的项目,我不确定我是否真的需要所有3个实例的每个库在使用。为什么他要创造这些额外的东西?我需要哪些呢?
附加信息:
OS: OSX El Capitan
IDE: Xcode 7.3.1
当您构建opencv库时,它会创建实际的*。dylib binary (libopencv_LibName.3.1.0.dylib),包含发布版本、主要版本和次要版本。(Release = 3, Major = 1, Minor = 0).这允许你以动态的方式链接到库的特定版本。(例如,opencv在发行版本之间经常不完全兼容。(从2. x。X到3.x.x),但它通常在主要/次要版本之间兼容。X
通过链接到3.1.0版本,您锁定了需要该特定版本的库。(如果你更新了opencv,它仍然会使用opencv 3.1.0)。
然而,如果你链接到3.1版本,它只关心发布和主要版本,但将允许小版本更新。(目前3.1是指向3.1.0的符号链接,但如果您安装了3.1.1,它现在将引用3.1.1库。)我通常发现最好链接到这个,因为它允许你更新错误修复,但不会破坏任何功能。
最后是无版本符号链接,它总是引用你安装的最新版本的opencv。目前它引用3.1.0,但如果您安装了3.1.1,它现在将引用3.1.1。这并不坏,但是如果您要安装4.0.0,它现在就会引用这个二进制文件,并且可能会破坏一些API。
- 模板-模板参数推导:三个不同的编译器三种不同的行为
- 在 2D 向量中使用第三个 [ ] 有什么意义?
- 有没有一种"cleaner"的方法可以在指向基的指针向量中找到派生类的第一个实例?
- 如何通过按下第三个窗口中的按钮,将QString从一个窗口获取到另一个窗口
- 重载 -> shared_ptr 个实例中的箭头运算符<interface>,接口中没有纯虚拟析构函数
- 如何知道n!是否可以表示为三个连续数字的乘法?
- 我有三个 getline,但是一旦编译,输入就太多了
- 删除功能不适用于串行通信后多个循环中的多个实例
- 我遇到了黑客排名中的问题"TWO STRINGS"的三个测试用例的分段错误。原因是什么?
- 有没有更好的方法对C++中的三个整数进行排序?
- CUDA:重载函数"isnan"的多个实例
- 如何检查第三个 API 是否在 Linux 中为 c/c++ 程序创建了一个新线程?
- 创建子类的多个实例,其中只有一个超类实例
- 我们如何并行运行算法的 n 个实例并以有效的方式计算结果函数的平均值?
- 为什么 getch 在按下函数或箭头键时返回三个值?
- 使用三个数字比较器进行排序
- 我想在C++代码中比较这三个术语
- 我的动态链接队列在同一输出流中调用时不正确地输出三个返回函数
- 创建了三个线程来实例化同一个类.但很快只有一个线程继续运行
- 每个openCV 3.1.0库的三个实例