无数_wushu
无数_wushu

Reputation: 29

Is MSVC Redistributable a runtime library or a dynamic library?

I noticed these pieces of content:

In Microsoft's documentation, it says that MSVC Redistributable is a runtime library, and it also says that crt contains functions and global variables exported from the standard C99 CRT library (This is not part of the runtime library definition, is it?).

But I found very many articles that say MSVC Redistributable is a set of dynamic library files.

May I ask what exactly is MSVC Redistributable?

Upvotes: 0

Views: 322

Answers (1)

SoronelHaetir
SoronelHaetir

Reputation: 15172

The MSVC Redistributables are particular implementations of the C (and to a lesser extent C++*) standard libraries, as well as similar builds of some important VC components (MFC/ATL). They provide concrete implementations of the library functionality dictated by the language standards, along with some MS-specific functionality. Microsoft makes these libraries available in a form that you can legally include with binaries you have built, that is why they are called "redistrubatable". And note that only the release builds of the dynamic libraries are covered, you cannot legally include either the debug form of the dynamic libraries or the static libraries at all.

  • I say lesser extent for C++ because very much of the C++ standard library is in the form of templates that are evaluated at build-time by the compiler, rather than anything that can be shipped compiled in a standard form.

Upvotes: 1

Related Questions