0

所以我试图在我正在处理的项目中使用 taglib,并且似乎无法克服一些未解决的外部问题。首先,我从 github 下载了最新的 taglib 版本,并继续按照Using TagLib in Visual Studio 2010 中给出的答案进行操作。构建 taglib 后,我继续为我的项目添加以下路径到我的 VS10 包含目录:C:\code\libs\taglib; C:\code\libs\taglib\taglib; C:\code\libs\taglib\taglib\toolkit(请注意,我的 taglib 根目录被简单地重命名为 taglib)。

完成此操作后,我尝试使用此页面入门部分中的示例:http: //developer.kde.org/~wheeler/taglib/api/
所以我只是复制了第一行代码,试图打开一个文件参考:

TagLib::FileRef f("Latex Solar Beef.mp3");

有了这行代码,而我的代码中没有其他示例,VS2010 会吐出以下未解决的外部错误:

getFileInfo.obj : error LNK2019: unresolved external symbol "__declspec(dllimport) public: virtual __thiscall TagLib::FileRef::~FileRef(void)" (__imp_??1FileRef@TagLib@@UAE@XZ) referenced in function "void __cdecl tagLibTest(void)" (?tagLibTest@@YAXXZ)
getFileInfo.obj : error LNK2019: unresolved external symbol "__declspec(dllimport) public: __thiscall TagLib::FileRef::FileRef(class TagLib::FileName,bool,enum TagLib::AudioProperties::ReadStyle)" (__imp_??0FileRef@TagLib@@QAE@VFileName@1@_NW4ReadStyle@AudioProperties@1@@Z) referenced in function "void __cdecl tagLibTest(void)" (?tagLibTest@@YAXXZ)
getFileInfo.obj : error LNK2019: unresolved external symbol "__declspec(dllimport) public: __thiscall TagLib::FileName::FileName(char const *)" (__imp_??0FileName@TagLib@@QAE@PBD@Z) referenced in function "void __cdecl tagLibTest(void)" (?tagLibTest@@YAXXZ)

我尝试过的事情:

  1. 所以我尝试了一个空的构造函数,只是想看看我是否至少可以获得一个 void FileRef,并且它确实可以编译,但并没有真正的帮助。
  2. 手动将 taglib 文件夹中的每个目录添加到包含路径中,这没有任何改变。
  3. 从 taglib 站点和 github 多次重建。

在这一点上,我认为这可能是我设置环境的方式存在问题,但我不确定该发布什么。

任何帮助将不胜感激,

感谢您抽时间阅读!

4

1 回答 1

0

我遇到过同样的问题。我通过将 TagLib VS 解决方案的构建配置从调试更改为发布解决了这个问题。

于 2012-06-18T09:36:37.857 回答