Вопрос по g++, compiler-construction, c++, linker, visual-c++ – Использовать библиотеки, скомпилированные с Visual Studio, в приложении, скомпилированном g ++ (mingw)

5

Можно ли использовать библиотеку, скомпилированную Visual Studio, в приложении, скомпилированном с помощью g ++ (mingw) в Windows?

Примечание: у MinGW есть только один я. Martin B
Спасибо, исправили это. Jesse Vogt

Ваш Ответ

3   ответа
0

нет никаких причин, по которым вы не смогли бы (в конце концов, это весь x86). Что касается практики, существует ряд инструментов для преобразования между форматами библиотеки и объектных файлов. Если вы можете найти правильный и справиться с какими-либо именами, соглашениями о вызовах и различиями в структуре (я не знаю, будете ли вы или не будете иметь дело с чем-либо из этого), вы должны быть хороши.

6

no (because the name-mangling differs between g++ and VC++).

If the library is a static library written in C (or with an extern "C" interface): yes, but certain caveats apply.

If the library is a DLL with a C interface: yes, but you'll have to create your own import library.

Ваши ссылки 404 сейчас. Было бы предпочтительно, чтобы ответ охватывал основы того, что говорится в ссылках, и предлагал ссылки в качестве вспомогательной ссылки.
Вам не нужна библиотека импорта, если вы загружаете DLL с помощью LoadLibrary () или LoadLibraryEx ().

Похожие вопросы