Visual Studio 2019: LNK2019 error from msvcrtd.lib(utility.obj)

Souvik Maiti 1 Reputation point
2022-05-17T20:57:52.893+00:00

I'm working on upgrading a C++ DLL project (Debug, x86) from VS2008 to VS2019. While doing so, got many different link error along the way and got it resolved by adding the dependencies - ucrtd.lib, vcruntimed.lib and msvcrtd.lib. But currently stuck with the following error -

4>msvcrtd.lib(utility.obj) : error LNK2019: unresolved external symbol ___vcrt_initialize referenced in function ___scrt_initialize_crt
4>msvcrtd.lib(utility.obj) : error LNK2019: unresolved external symbol ___vcrt_uninitialize referenced in function ___scrt_initialize_crt
4>msvcrtd.lib(utility.obj) : error LNK2019: unresolved external symbol ___vcrt_uninitialize_critical referenced in function ___scrt_dllmain_uninitialize_critical
4>msvcrtd.lib(utility.obj) : error LNK2019: unresolved external symbol ___vcrt_thread_attach referenced in function ___scrt_dllmain_crt_thread_attach
4>msvcrtd.lib(utility.obj) : error LNK2019: unresolved external symbol ___vcrt_thread_detach referenced in function ___scrt_dllmain_crt_thread_attach
4>msvcrtd.lib(utility.obj) : error LNK2019: unresolved external symbol __is_c_termination_complete referenced in function ___scrt_dllmain_uninitialize_c
4>msvcrtd.lib(utility.obj) : error LNK2019: unresolved external symbol ___acrt_initialize referenced in function ___scrt_initialize_crt
4>msvcrtd.lib(utility.obj) : error LNK2019: unresolved external symbol ___acrt_uninitialize referenced in function ___scrt_uninitialize_crt
4>msvcrtd.lib(utility.obj) : error LNK2019: unresolved external symbol ___acrt_uninitialize_critical referenced in function ___scrt_dllmain_uninitialize_critical
4>msvcrtd.lib(utility.obj) : error LNK2019: unresolved external symbol ___acrt_thread_attach referenced in function ___scrt_dllmain_crt_thread_attach
4>msvcrtd.lib(utility.obj) : error LNK2019: unresolved external symbol ___acrt_thread_detach referenced in function ___scrt_dllmain_crt_thread_detach

I have Ignore All Default Libraries set to Yes and Show Progress to /VERBOSE. The log does show it's picking the correct version of the msvcrtd.lib. Additionally, Runtime Library is set to /MDd.

Any help is much appreciated. Please let me know in case of any additional queries.

Thanks and Regards,
Souvik

C++
C++
A high-level, general-purpose programming language, created as an extension of the C programming language, that has object-oriented, generic, and functional features in addition to facilities for low-level memory manipulation.
3,544 questions
{count} votes