¿Por qué la biblioteca en tiempo de ejecución es una opción de compilación en lugar de una opción de vinculador?

Estoy tratando de construir una biblioteca estática C / C ++ usando Visual Studio 2005. Dado que la selección de la biblioteca de tiempo de ejecución es una opción de compilación, me veo obligado a construir cuatro variaciones de mi biblioteca, una para cada variación de la biblioteca de tiempo de ejecución: @

/ MT - biblioteca de tiempo de ejecución estática / MD - Biblioteca de tiempo de ejecución de DLL / MTd - depurar la biblioteca de tiempo de ejecución estática / MDd - depurar la biblioteca de tiempo de ejecución de DLL

Estos soncompilado opciones, no opciones de enlazador. Viniendo de un entorno Linux, esto parece extraño. ¿Las diferentes bibliotecas de tiempo de ejecución tienen diferentes convenciones de llamada o algo así? ¿Por qué no se pueden resolver las diferentes bibliotecas de tiempo de ejecución en el momento del enlace, es decir, cuando enlace la aplicación que usa mi biblioteca estática?

Respuestas a la pregunta(6)

Su respuesta a la pregunta