Można domyślać się, że biblioteka jest zbudowana za pomocą msvc
, ty próbujesz ją dołączyć do czegoś budowanego przez mingw
.
AFAIK to nie jest takie proste (oba kompilatory mają różne ABI), możliwe, że nawet sam nagłówek kompiluje się tylko pod msvc
.
ABI w C jest zgodne, wliczając w to funkcje napisane w C++ ale wyeksportowane z extern "C"
, ale C++ poza tym wyjątkiem zgodny nie jest.
Co jednak z pewnością nie jest zgodne to format biblioteki .lib
w MSVC z formatem biblioteki .a
w mingwach, nawet jeśli sama DLL-ka używa tylko ABI z C.
Więc jeśli ten RPRuntime.dll jest potencjalnie używalny w C (a to możemy ocenić po wyglądzie nagłówka), to da się tej biblioteki użyć, jednak nie przez wlinkowanie .lib
, tylko przez dynamiczne ładowanie DLL-ki (LoadLibrary) albo odtworzenie biblioteki importowej (.lib/.a) we właściwym formacie.