Hi,
Default convention is stdcall, but the DLL's have cdecl symbols?
What would be the easiest way to make a custom dll with _name@bytes decoration? Without wrappers?
Thanks,
MK
Link Copied
Hi Mikhail,
Where did you find public (I mean symbols, that are defined in the public IPP headers) cdecl symbols in IPP DLLs? Just have a look at the ippdefs.h header, at the definition of IPPAPI macro, that is used for declaration of all public IPP APIs:
#if !defined( IPPAPI )
#if defined( IPP_W32DLL ) && (defined( _WIN32 ) || defined( _WIN64 ))
#if defined( _MSC_VER ) || defined( __ICL )
#define IPPAPI( type,name,arg ) \
__declspec(dllimport) type __STDCALL name arg;
#else
#define IPPAPI( type,name,arg ) type __STDCALL name arg;
#endif
#else
#define IPPAPI( type,name,arg ) type __STDCALL name arg;
#endif
#endif
it means that all IPP APIs use stdcall convention.
regards, Igor
Sorry, I expected to see _name@bytes decoration like in MKL for stdcall functions there...
I am attempting to link the IPP libraries into an application built using the MinGW 64-bit toolchain v5.3 under Windows 10. Applications built with this toolchain which include the IPP headers fail to link, since the generated code assumes the IPP DLL export functions will be decorated using _name@bytes decorations.
Can anyone provide a .def file which provides the necessary decoration aliases? I request that Intel incorporate the alias export functions in future versions of the DLL or provide a .def file which provides such decorated aliases.
Jim,
could you provide some example of link line and errors strings? IPP DLL's are standard, I cannot understand the problem.
Pavel
For more complete information about compiler optimizations, see our Optimization Notice.