MinGW создает файлы dll.a? Что это за файлы библиотеки?
Я довольно хорошо знаком с компиляцией библиотек Windows и Linux, но на сегодня, когда я видел MinGW
на моей машине Windows выкинул dll.a
а также .a
файлы после компиляции OpenCV я начал серьезно задумываться.
Это мои \lib
вывод из компиляции OpenCV:
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 ответ
Файлы.a являются статическими библиотеками. Файлы.dll.a - это файлы, которые просто помогают вам ссылаться на dll (динамическую библиотеку). Я предполагаю, что ваша dll содержит все, а файлы dll.a просто указывают на dll.