Compiling boost 1.33.1, Visual Studio 2005 SP1, 64 bit Windows, AMD
When compiling boost 1.33.1 with Visual Studio 2005 SP1 for 64 bit AMD on windows I get the following error. once.obj : error LNK2019: unresolved external symbol _InterlockedCompareExchange referenced in function "long __cdecl `anonymous namespace'::compare_exchange(long * volatile,long,long)" (?compare_exchange@?A0x74ecc88f@@YAJREAJJJ@Z)
From what I have seen this works in multiple other projects. This also works if I use that header in a new isolated project. I am assuming it is some compiler setting. But I am not sure which.
Any thoughts are greatly appreciated Thank You -Leslie
On 1/17/07, Leslie Brody (TT)
When compiling boost 1.33.1 with Visual Studio 2005 SP1 for 64 bit AMD on windows I get the following error.
once.obj : error LNK2019: unresolved external symbol _InterlockedCompareExchange referenced in function "long __cdecl `anonymous namespace'::compare_exchange(long * volatile,long,long)" (?compare_exchange@?A0x74ecc88f@@YAJREAJJJ@Z)
From what I have seen this works in multiple other projects. This also works if I use that header in a new isolated project. I am assuming it is some compiler setting. But I am not sure which.
Nope - it's some weird code in boost threads bugging out. Open up libs\thread\src\once.cpp and delete all the ice_wrapper functions. replace compare_exchange's body with "return InterlockedCompareExchange(dest, exch, cmp);"
Any thoughts are greatly appreciated
Thank You
-Leslie _______________________________________________ Boost-users mailing list Boost-users@lists.boost.org http://lists.boost.org/mailman/listinfo.cgi/boost-users
-- Cory Nelson http://www.int64.org
participants (2)
-
Cory Nelson
-
Leslie Brody (TT)