<div dir="ltr">Did you define TAGLIB_STATIC macro in "prepocessor directives" ?</div><br><div class="gmail_quote"><div dir="ltr">În dum., 14 oct. 2018 la 14:00, <<a href="mailto:taglib-devel-request@kde.org">taglib-devel-request@kde.org</a>> a scris:<br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Send taglib-devel mailing list submissions to<br>
        <a href="mailto:taglib-devel@kde.org" target="_blank">taglib-devel@kde.org</a><br>
<br>
To subscribe or unsubscribe via the World Wide Web, visit<br>
        <a href="https://mail.kde.org/mailman/listinfo/taglib-devel" rel="noreferrer" target="_blank">https://mail.kde.org/mailman/listinfo/taglib-devel</a><br>
or, via email, send a message with subject or body 'help' to<br>
        <a href="mailto:taglib-devel-request@kde.org" target="_blank">taglib-devel-request@kde.org</a><br>
<br>
You can reach the person managing the list at<br>
        <a href="mailto:taglib-devel-owner@kde.org" target="_blank">taglib-devel-owner@kde.org</a><br>
<br>
When replying, please edit your Subject line so it is more specific<br>
than "Re: Contents of taglib-devel digest..."<br>
<br>
<br>
Today's Topics:<br>
<br>
   1. Using taglib with Visual Studio 2017 (Harry Mannbacker)<br>
<br>
<br>
----------------------------------------------------------------------<br>
<br>
Message: 1<br>
Date: Sat, 13 Oct 2018 20:25:03 -0400<br>
From: Harry Mannbacker <<a href="mailto:harrymannbacker@gmail.com" target="_blank">harrymannbacker@gmail.com</a>><br>
To: <a href="mailto:taglib-devel@kde.org" target="_blank">taglib-devel@kde.org</a><br>
Subject: Using taglib with Visual Studio 2017<br>
Message-ID:<br>
        <<a href="mailto:CAFN38PrkV8dTOaX%2BOBpUrED_fSCgevNiFv1DoO2RaibjBry6gg@mail.gmail.com" target="_blank">CAFN38PrkV8dTOaX+OBpUrED_fSCgevNiFv1DoO2RaibjBry6gg@mail.gmail.com</a>><br>
Content-Type: text/plain; charset="utf-8"<br>
<br>
I'm attempting to use TagLib with Visual Studio 2017, and I'm having some<br>
difficulties getting the examples to work, specifically with respect to<br>
linker errors.  Here is a summary of what I've done so far:<br>
<br>
The first course of action I took was to build TagLib using Visual Studio<br>
2017 Community Edition.  I followed the directions in the INSTALL file and<br>
used CMake to create the appropriate Visual Studio .sln file.  In Visual<br>
Studio, I compiled the "tag" project and saw that a .lib static library was<br>
created called tag.lib.<br>
<br>
Next, I created a Windows console project called "retag4" within its own<br>
solution; I culled together all the header files associated with TagLib,<br>
and then I changed the properties of retag4 as follows:<br>
<br>
 - Under C/C++, I set "Additional Include Directories" to the location<br>
where I kept all the TagLib header files (I did this for All Configurations)<br>
 - Under Linker -> General, I updated "Additional Library Directories" to<br>
point to the location where my tag.lib file resides.<br>
 - Under Linker -> Input, I added "tag.lib" to "Additional Dependencies".<br>
<br>
To test the tag.lib build, I pasted the code from examples/tagreader.cpp<br>
into retag4.cpp.  Specifically, I pasted in the #include directives and the<br>
main() function.  Initially, I don't see any compilation errors in Visual<br>
Studio, however when I do a full build on retag4, I get two C4251 warnings<br>
with the message:<br>
<br>
'TagLib::FileName::m_name': class<br>
'std::basic_string<char,std::char_traits<char>,std::allocator<char>>' needs<br>
to have dll-interface to be used by clients of class 'TagLib::FileName'<br>
<br>
'TagLib::FileName::m_wname': class<br>
'std::basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t>>'<br>
needs to have dll-interface to be used by clients of class<br>
'TagLib::FileName'<br>
<br>
There are also a series of LNK2019 errors with verbiage like this:<br>
<br>
unresolved external symbol "__declspec(dllimport) public: virtual<br>
__thiscall TagLib::String::~String(void)" (__imp_??1String@TagLib@@UAE@XZ)<br>
referenced in function _main<br>
<br>
Based on the first warning, it looks as though the _WIN32 macro is defined<br>
upon compilation, but it's not clear to me why I'm getting a warning here.<br>
I've even tried rebuilding the tag project within the TagLib library such<br>
that it produces a .dll instead of a static .lib, but this results in MSVS<br>
complaining about an invalid .dll file.<br>
<br>
Apologies if this is a more basic question; I'm still fairly new to Windows<br>
programming.  Am I going down the correct path using Visual Studio to<br>
compile my retag4 code?  Should I be building a .lib file or a .dll file in<br>
this instance?<br>
<br>
Thanks for any assistance you can provide.<br>
-------------- next part --------------<br>
An HTML attachment was scrubbed...<br>
URL: <<a href="http://mail.kde.org/pipermail/taglib-devel/attachments/20181013/5b6bc553/attachment-0001.html" rel="noreferrer" target="_blank">http://mail.kde.org/pipermail/taglib-devel/attachments/20181013/5b6bc553/attachment-0001.html</a>><br>
<br>
------------------------------<br>
<br>
Subject: Digest Footer<br>
<br>
_______________________________________________<br>
taglib-devel mailing list<br>
<a href="mailto:taglib-devel@kde.org" target="_blank">taglib-devel@kde.org</a><br>
<a href="https://mail.kde.org/mailman/listinfo/taglib-devel" rel="noreferrer" target="_blank">https://mail.kde.org/mailman/listinfo/taglib-devel</a><br>
<br>
<br>
------------------------------<br>
<br>
End of taglib-devel Digest, Vol 158, Issue 4<br>
********************************************<br>
</blockquote></div>