26

私は Windows と Linux のライブラリのコンパイルにかなり精通していますが、今日、MinGW自分の Windows マシンで OpenCV のコンパイル後dll.a.a ファイルが破棄されるのを見て、真剣に考え始めました。

これらは、\libOpenCV コンパイルからの私の出力です。

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

(私は明らかにより多くのバイナリを持っていますが、ここにリストする意味はありません)

これらがリンクできる通常の静的ライブラリであるかどうか誰か教えてもらえますか? それらに対してどのようにリンクすればよいですか?

4

1 に答える 1

22

.a ファイルは静的ライブラリです。.dll.a ファイルは、dll (動的ライブラリ) にリンクするのに役立つファイルです。私の推測では、dll にはすべてが含まれており、dll.a ファイルは dll を指しているだけです。

于 2013-06-12T13:31:04.057 に答える