我对Windows和Linux库的编译相当熟悉,但是到今天当我在Windows机器上看到MinGW
在OpenCV编译后抛出dll.a
和.a
文件时,我开始认真思考。
这些是我从OpenCV编译的\lib
输出:
2012-12-21 23:35 1 338 420 libopencv_core243.dll.a 2012-12-21 23:33 224 994 libopencv_core_pch_dephelp.a 2012-12-21 23:38 830 820 libopencv_features2d243.dll.a
和我的\bin
输出:
2012-12-21 23:40 356 178 libopencv_perf_core.dll.a 2012-12-21 23:45 362 702 libopencv_perf_features2d.dll.a 2012-12-21 23:35 4 086 052 libopencv_core243.dll 2012-12-21 23:38 2 102 896 libopencv_features2d243.dll
(我显然有更多的二进制文件,但在这里列出它没有意义)
有人可以告诉我,如果这些是正常的静态库,我可以链接? 我应该如何与他们联系?
.a文件是静态库。 .dll.a文件只是帮助你链接到一个DLL(这是一个动态库)的文件。 我的猜测是,你的DLL包含的一切,和dll.a文件只是指向DLL。