MinGW创建dll.a文件?这些库文件是什么类型的?

时间:2012-12-21 23:37:33

标签: windows linker mingw static-libraries static-linking

我对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

(我显然有更多的二进制文件,但在此列出它没有任何意义)

有人可以告诉我这些是否是我可以链接的普通静态库?我应该如何与他们联系?

1 个答案:

答案 0 :(得分:17)

.a文件是静态库。 .dll.a文件是帮助您链接到dll(这是一个动态库)的文件。我的猜测是你的dll包含所有内容,dll.a文件只指向dll。