我必须使用基于 ROOT cern 的 c++ 库。这些库是用 Linux 环境和 k dev 编写的,现在我必须在带有 Visual Studio 的 Windows 中使用这些库。首先,我只是想在 Visual c++ 中编译一些头文件 .h 和一些源代码 .cpp 来创建一个 dll。这些文件在 Linux 中编译没有任何问题。
所以我在生成一个可以稍后在 csharp 中使用的工作 DLL 时遇到问题。
我得到的错误是 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)
如果有人能指出一些提示,我将不胜感激!