Hi,

While building the APR library with VS2013 for Win32(x86) platform, the 
following link errors are encountered.

apr_atomic.obj : error LNK2019: unresolved external symbol 
__InterlockedIncrement referenced in function _apr_atomic_inc32@4
apr_atomic.obj : error LNK2019: unresolved external symbol 
__InterlockedExchangeAdd referenced in function _apr_atomic_add32@8
apr_atomic.obj : error LNK2019: unresolved external symbol 
__InterlockedExchange referenced in function _apr_atomic_set32@8
apr_atomic.obj : error LNK2019: unresolved external symbol 
__InterlockedDecrement referenced in function _apr_atomic_dec32@4
apr_atomic.obj : error LNK2019: unresolved external symbol 
__InterlockedCompareExchange referenced in function _apr_atomic_cas32@12

These errors are caused by the use of the new Platform Toolset v120 which gets 
installed with VS2013. More specifically, the problem is in the function cast 
wrappers defined in apr_atomic.c and used only for 
Win32 (x86) platform. Taking out the function casts helps resolve the link 
errors with a penalty of having warning messages instead.

The build for x64 platform is not affected.

Would you be interested in addressing this issue in the APR mainstream in one 
or the other way?

Regards,
Arsen

Reply via email to