apr-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Arsen Chaloyan <achalo...@yahoo.com>
Subject Link errors in apr_atomic with VS2013
Date Wed, 06 Nov 2013 01:49:22 GMT
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

Mime
View raw message