c++memcpyintrinsicscrtmemset

Linking error when building without CRT, memcpy and memset intrinsic functions


I'm trying to build an application as tiny as possible, and in doing so I'm trying to avoid use of the CRT by using Win API calls instead of standard C/C++ calls. Unfortunately, I'm still getting a single linker error:

Error   2   error LNK2001: unresolved external symbol _memcpy

I don't call memcpy anywhere in my code, so I presume one of the Windows functions is calling it. Turning on intrinsic functions gives an unresolved symbol _memset, which I don't use either. From my understanding, both memcpy and memset should be included with intrinsic functions enabled. Since my code is too long to post, here are the Win API calls in my program:

My questions:


Solution

  • memset() is coming from ZeroMemory()

    On hitting this I just typed in the canonical definitions of memcpy, memmove, memset out of "The C Programming Language".