Reputation: 53
I am trying to run a very small c++ program using the nvapi library on a different machine than it was compiled on. So it does not have the Visual Studio resources installed thus all the necessary things have to be packed inside the executable at build time. When the executable is being ran on the other windows machine it throws a runtime error stating that “MSVCP140D.dll”
is missing. The “D” at the end of the file name indicates that it is a dev library even though I built with release mode. The build output is inside a “Release” folder which means Visual Studio uses the right build method. In Project -> Properties -> C/C++ -> Code Generation -> Runtime Library
is set to Multi-threaded (/MT)
. Which logically should not link to dev libraries.
Upvotes: -1
Views: 224
Reputation: 17185
Check which file in your build output is depending on the debug runtime. You can use a tool such as this dependency viewer to find the offending library. If you load the exe file, you get the tree of dependencies, if you somewhere find the *d.dll files, you know the "bad guy".
(Disclaimer: I'm not affiliated with that tool, but it's the one I've been using most. There are a bunch of other similar tools available)
Upvotes: -1