Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > C/C++: Общие вопросы > [minGW] из DLL в LIB неявного связывания


Автор: borisbn 28.1.2012, 15:43
Здравствуйте.

Есть dll-ка, собранная на MSVC 2008, и соответствующая ей lib-ина для неявного связывания при динамической линковке.
Вопрос (вернее 2):
1) Соответствуют ли форматы студийной и minGW-шной lib-ин ?
2) Как в minGW создать из dll-ки соответствующую ей lib-ину неявного связывания ?

P.S. В студии это (2-й пункт) делается при помощи IMPDEF.exe и lib.exe, в билдере - IMPLIB.EXE, а как в minGW - не знаю.

Спасибо.

Автор: bsa 28.1.2012, 18:41
mingw умеет связывать напрямую с dll, без дополнительных *.lib. Но если тебе очень надо, то можешь поковырять dlltool.exe из каталога bin. Если не ошибаюсь, именно она умеет делать *.lib.

Автор: borisbn 29.1.2012, 11:47
Спасибо. Т.к. я не знаю, как в QtCreator'е указать используемую dll-ку, а не lib-ину, то попробовал dlltool.exe, и получил fail.
Что я не так делаю ?
Цитата

c:\mingw\bin>dlltool.exe -D D:\Work\magma\Bin\ippusr_core_s.dll -l D:\Work\magma\Bin\ippusr_core_s.lib -v
dlltool.exe: Path components stripped from dllname, 'D:\Work\magma\Bin\ippusr_core_s.dll'.
dlltool.exe: Processing definitions
dlltool.exe: Processed definitions
dlltool.exe: Creating library file: D:\Work\magma\Bin\ippusr_core_s.lib
dlltool.exe: run: as   -o disch.o disch.s
dlltool.exe: No such file or directory
dlltool.exe: CreateProcess

вот зависимости этой dll
user posted image
вот таблица экспорта (частично)
user posted image

Автор: bsa 29.1.2012, 22:04
borisbn, LIBS += c:/windows/system32/kernel32.dll

Автор: borisbn 30.1.2012, 09:52
bsa, ясно, спасибо, закрываю.

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)