Link error Visual Studio 2005, Version 8

Mike Dawson mikeesn at charter.net
Thu Dec 20 18:44:28 UTC 2012


I had been using taglib 1.7 with this environment on Windows, but when I upgraded to the master, I started receiving the following link error:
MSVCRTD.lib(wcrtexe.obj) : error LNK2005: _NtCurrentTeb already defined

As it turns out, this was a result of the code in ~/taglib.git/taglib/toolkits/taglib.h commited at hash 223b85d345d4c0 - Use GCC automic builtins where possible.
When the code is removed, the build works correctly. Not being sure of the intent of the commit, I was hoping someone could verify it.

Patch:

diff --git a/taglib/toolkit/taglib.h b/taglib/toolkit/taglib.h
index e941ca7..3e437ce 100755
--- a/taglib/toolkit/taglib.h
+++ b/taglib/toolkit/taglib.h
@@ -44,25 +44,6 @@
 
 #include <string>
 
-#ifdef __APPLE__
-#  include <libkern/OSAtomic.h>
-#  define TAGLIB_ATOMIC_MAC
-#elif defined(WIN32) || defined(_WIN32) || defined(__WIN32__) || defined(__CYGWIN__)
-#  if !defined(NOMINMAX)
-#    define NOMINMAX
-#  endif
-#  include <windows.h>
-#  define TAGLIB_ATOMIC_WIN
-#elif defined (__GNUC__) && (__GNUC__ * 100 + __GNUC_MINOR__ >= 401)    \
-      && (defined(__i386__) || defined(__i486__) || defined(__i586__) || \
-          defined(__i686__) || defined(__x86_64) || defined(__ia64)) \
-      && !defined(__INTEL_COMPILER)
-#  define TAGLIB_ATOMIC_GCC
-#elif defined(__ia64) && defined(__INTEL_COMPILER)
-#  include <ia64intrin.h>
-#  define TAGLIB_ATOMIC_GCC
-#endif
-
 //! A namespace for all TagLib related classes and functions
 
 /*!

Thanks in advance,
Mike
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.kde.org/pipermail/taglib-devel/attachments/20121220/578afd95/attachment.html>


More information about the taglib-devel mailing list