Мне приходится работать с библиотеками c ++ на основе ROOT cern. Эти библиотеки были написаны с использованием среды Linux и k dev, и теперь я должен использовать эти библиотеки в Windows с Visual Studio. Сначала я просто пытаюсь скомпилировать некоторые заголовки .h и некоторые исходные коды .cpp в Visual c ++ для создания DLL. эти файлы скомпилированы без проблем в Linux.
Итак, у меня проблема с генерацией работающей DLL, которую я могу использовать позже в csharp.
Ошибки, которые я получаю, являются ошибками LNK, хотя я считаю, что добавил в компоновщик необходимый .lib, который является библиотеками, связанными с ROOT.
Ошибки следующие:
Error 1 error LNK2001: unresolved external symbol "public: virtual void __thiscall Directory::ShowMembers(class TMemberInspector &)" (?ShowMembers@Directory@@UAEXAAVTMemberInspector@@@Z)
Error 2 error LNK2001: unresolved external symbol "public: virtual void __thiscall Directory::Streamer(class TBuffer &)" (?Streamer@Directory@@UAEXAAVTBuffer@@@Z)
Error 3 error LNK2019: unresolved external symbol "public: static class TClass * __cdecl Directory::Class(void)" (?Class@Directory@@SAPAVTClass@@XZ) referenced in function "public: virtual class TClass * __thiscall Directory::IsA(void)const " (?IsA@Directory@@UBEPAVTClass@@XZ)
Я бы очень признателен, если бы кто-то мог указать на некоторые подсказки!