我正在尝试使用glog logging library (LINK)。在VS2012 (我使用的是Windows8Professional 64位(日语))中,我创建了一个带有单个main.cpp文件的空解决方案,就像文档(LINK)中的文件一样。此外,我在解决方案中导入了glog项目( dll项目或静态库项目),并设置了项目依赖项。为了避免一些错误,我必须注释掉port.h中的第97行:
/* In windows-land, hash<> is called hash_compare<> (from xhash.h) */
#define hash hash_compare当glog编译时,主应用程序给我未解析的外部符号错误(使用dll和静态版本)。
1>main.obj : error LNK2019: 未解決の外部シンボル "void __cdecl google::InitGoogleLogging(char const *)" (?InitGoogleLogging@google@@YAXPBD@Z) が関数 _main で参照されました。
1>main.obj : error LNK2019: 未解決の外部シンボル "public: __thiscall google::LogMessage::LogMessage(char const *,int)" (??0LogMessage@google@@QAE@PBDH@Z) が関数 _main で参照されました。
1>main.obj : error LNK2019: 未解決の外部シンボル "public: __thiscall google::LogMessage::~LogMessage(void)" (??1LogMessage@google@@QAE@XZ) が関数 _main で参照されました。我以Win32的身份编译。如果我检查一下调试文件夹,它实际上包含dll+lib或静态库文件。我还尝试在不使用visual studio依赖系统的情况下手动链接到库,但这是相同的。
发布于 2012-11-06 18:18:01
我已经从主干为MSVS2012构建了glog (据我所知,在header中提到的小补丁已经在这里出现了),所以它对我来说是有效的。看起来你的glog库的依赖描述丢失了。
您是否可以添加特定于windows的
#pragma comment(lib, "path_to_glog_from_project_dir.lib") 添加到您的某个项目文件中,例如,直接导入main.cpp并对其进行测试。
https://stackoverflow.com/questions/12880383
复制相似问题