Initializing TagLib::FileName with a 'const wchar_t *' array

Wolfgang Plaschg wolfgang.plaschg at gmail.com
Mon Aug 29 10:42:13 UTC 2011


Hello,

when I try to initialize a TagLib::FileName object with a `const
wchar_t*` array, I get the following linker error:

main.obj : error LNK2019: unresolved external symbol
"__declspec(dllimport) public: __thiscall
TagLib::FileName::FileName(unsigned short const *)"
(__imp_??0FileName at TagLib@@QAE at PBG@Z) referenced in function _main

The source I tried to build is nothing more but:

#include <taglib/mpegfile.h>

int main(int , char** )
{
    const wchar_t* wt = L"test.mp3";
    TagLib::FileName filename_w(wt);
}

I compiled taglib with MSVC 2008 in debug mode and I'm referencing the
corresponding debug .lib in my project.

What strikes me is that the linker tries to link to a
`TagLib::FileName::Filename(unsigned short const *)` constructor whereas
I'm using `const wchart_t *`. Everything works fine if I use `const char
*`.

Any hint is greatly appreciated.

Wolfgang


More information about the taglib-devel mailing list