0

我有一个链接问题。我安装了 Visual Studio 2012,下载了 qt-sourcecode 并为 vc 2012 编译了它,它与 Visual Studio 插件一起工作得很好。然后我下载了Boost并编译了它。

在控制台应用程序上,Boost 一切正常,但如果我创建一个 qt 项目并想在那里使用 Boost (filesystem libary),我会收到一个链接错误:

error LNK2019: Verweis auf nicht aufgelöstes externes Symbol ""void __cdecl boost::filesystem::path_traits::convert(char const *,char const * .......
error LNK2019: Verweis auf nicht aufgelöstes externes Symbol ""public: static class std::codecvt<unsigned short,char,int> const & __cdecl boost::filesystem::path::codecvt(void)......
fatal error LNK1120: 2 nicht aufgelöste Externe

它在英语中的意思是“未解析的外部符号”。

我使用了相同的包含路径和库路径,但我几个小时都无法解决这个问题。即使我使用 mingw 选项编译 Boost

有人知道如何解决这个问题吗?

4

1 回答 1

1

好的,我想我找到了解决方案,但效果并不好。

这有点不同,但它浪费了数小时的搜索时间。最后这个链接解决了这个问题:链接到解决方案。这是第一条评论中的链接。我只需要在 Visual Studio 中进行更改:项目属性 -> c/c++ -> 语言 -> 将 wchar_t 视为内置类型:是的。然后程序将正确链接

于 2013-03-27T22:47:25.663 回答