Я создал простой проект статической библиотеки и консольный проект Win32 для вызова функции.
// static lib code
// Test.h
void abf();
// Test.cpp
void abf()
{
}
// Caller Project code
// MyTest.cpp
#include "Test.h
int main()
{
abf();
return 0;
}
Статическая библиотека компилируется без ошибок. Но вызывающий проект выдает следующую ошибку.
error LNK2019: unresolved external symbol "void __cdecl abf(void)" (?abf@@YAXXZ) referenced in function _main
Я попробовал несколько вещей, таких как помещение функции в extern блок «C», экспорт с использованием __declspec (dllexport), но ничего не помогло.
Есть идеи?
Экспортируйте ваши символы, используя __declspec (dllexport) в test.h
extern "C" __declspec(dllexport) void abf(void);
Других решений пока нет …