edv:prg:mq-series:example:kompilieren_linken_von_mqic.dll_.lib_mit_gcc_unter_windows
Kompilieren/Linken von mqic.dll/.lib mit GCC unter Windows
GCC bzw. MinGW kann nicht direkt gegen mqic.dll/.lib arbeiten. Das Linken funktioniert zwar, aber die exe stürzt zur Laufzeit ab.
Das Problem scheint fehlende Information/falsche Calling Convention o.ä. zu sein.
Hinweis: IBM unterstützt den GCC (für Windows) explizit NICHT:
https://www-304.ibm.com/support/docview.wss?uid=swg27023058#Windows_Compiler_ww
Workaround:
Das Bauen einer passenden Import-Lib:
Konkret:
- Die Exports aus der mqic.lib auslesen:
dumpbin /exports mqic.lib
…und die Ausgabe der Exports in mqic.def übernehmen (und entsprechend anpassen).
- Eine neue Lib bauen:
dlltool -v --input-def mqic.def --dllname mqic.dll --output-lib libMQIC.a -k
…und beim Linken die libMQIC.a verwenden, statt die MQIC.LIB von MQ.
Stand: 11.03.2016
— : Jürgen Kreick
EOF
edv/prg/mq-series/example/kompilieren_linken_von_mqic.dll_.lib_mit_gcc_unter_windows.txt · Zuletzt geändert: 2020/01/11 01:23 von 127.0.0.1