Hello All,
When building Opal 3.18.8 with OpenSSL 1.1.1s, and the latest Windows 10
SDKs (10.0.22621.0 for example), we get the following errors:
opal64sd.lib(alloc.obj) : error LNK2005: SocketNotificationRetrieveEvents
déjà défini(e) dans opal64sd.lib(srtp.obj)
opal64sd.lib(datatypes.obj) : error LNK2005:
SocketNotificationRetrieveEvents déjà défini(e) dans opal64sd.lib(srtp.obj)
This error is due to the presence of a new inline function that is directly
defined in winsock2.h :
#if !defined(__midl)
inline
UINT32
SocketNotificationRetrieveEvents (
_In_ OVERLAPPED_ENTRY* notification
)
{
return (UINT32)notification->dwNumberOfBytesTransferred;
}
#endif
winsock2.h is included in different places, so we have this error.
There is, perhaps, a trick with __midl, unfortunately I have not been able
to understand how it works.
Do you have any idea how to build without errors with this new function?
Thanks in advance.
Patrice.
|