mvsc dll w mingw

mvsc dll w mingw
0

Witam!

Mam problem: Korzystam z rabbit mq pod c/c++. Większość biblioteki/ a raczej ich projekty są przygotowane w visual studio.

Tak więc, ściągnąłem wersje express, skompilowałem projekt i dostałem niezbędną dll'ke. Problem polega na tym, że potrzebuje ją zlinkować w mingw.

Proces kompilacji i linkowania przebiega ok - natomaist przy uruchomieniu (ich example) dostacje segfault'a.

Czy możliwe jest linkowanie DLL (pisanych w C oczywiście bo c++ to inna bajka) kompilowanych przez kompilatory microsoftowe w projektach kompiowanych w mingw?

Pozdrawiam

Azarien
  • Rejestracja:ponad 21 lat
  • Ostatnio:około 6 godzin
0

Jest możliwe, coś źle robisz.

KR
  • Rejestracja:prawie 14 lat
  • Ostatnio:prawie 3 lata
  • Postów:353
0

Jak juz masz gotowa dllke to nie ma znaczenia jakim kompilatorem zostala skompilowana. Wszystkie dane i tak sa czytane z naglowka i tablicy eksportow dllki. Tam masz info o nazwach funkcji i offsetach potrzebne do odwolania sie do nich. Sprawdz czy na pewno znajduje sciezke i czy zostaje zaladowana poprawnie.

0

powalczyłem z tym trochę, cmake wygenerował mi make file do mingw i poszło bez błędów.

A czy przypadkiem nie jest tak, ze mingw inaczej przekazuje parametry do funkcji? tj nie stdcallem, tylko inaczej?

szczególnie, że biblioteka jest linkowana podczas kompilacji, a nie ładowana w run-time'ie

Azarien
  • Rejestracja:ponad 21 lat
  • Ostatnio:około 6 godzin
0

A czy przypadkiem nie jest tak, ze mingw inaczej przekazuje parametry do funkcji? tj nie stdcallem, tylko inaczej?

Oba kompilatory stosują domyślnie cdecl. Jeśli chcesz mieć stdcall, trzeba to jawnie napisać.

edytowany 1x, ostatnio: Azarien

Zarejestruj się i dołącz do największej społeczności programistów w Polsce.

Otrzymaj wsparcie, dziel się wiedzą i rozwijaj swoje umiejętności z najlepszymi.