/ MD, /MT, /LD (biblioteca de tempo de execução de uso)
Permite que você indicar se um módulo multithread é uma DLL e versões de varejo ou depurar selecionadas da biblioteca de tempo de execução.
/MD[d]
/MT[d]
/LD[d]
Comentários
Opção |
Descrição |
---|---|
/MD |
Faz com que seu aplicativo para usar a versão específicos multi-thread e DLL da biblioteca de tempo de execução.Define _MT e _DLL e faz com que o compilador colocar o nome da biblioteca MSVCRT.lib para o arquivo. obj. Aplicativos compilados com essa opção estão vinculados estaticamente para MSVCRT.lib.Esta biblioteca fornece uma camada de código que permite que o vinculador resolver referências externas.O código de trabalho real está contido no MSVCR100.DLL, que deve estar disponível em tempo de execução para aplicativos vinculados com MSVCRT.lib. |
/MDd |
Define _DEBUG, _MT, e _DLL e faz com que seu aplicativo para usar a versão específicos multi-thread e DLL de depuração da biblioteca de tempo de execução.Ele também faz com que o compilador colocar o nome da biblioteca MSVCRTD.lib para o arquivo. obj. |
/MT |
Faz com que seu aplicativo utilize a versão multithread e estática da biblioteca de tempo de execução.Define _MT e faz com que o compilador colocar o nome da biblioteca LIBCMT.lib para o arquivo. obj, para que o vinculador use LIBCMT.lib para resolver os símbolos externos. |
/MTd |
Defines _DEBUG and _MT.Essa opção também faz com que o compilador colocar o nome de biblioteca sendo no arquivo. obj, para que o vinculador use sendo para resolver os símbolos externos. |
/LD |
Cria uma DLL. Passa a opção /DLL para o vinculador.O vinculador procura, mas não requer um DllMain função.Se você não escrever um DllMain o vinculador de função, insere um DllMain função retorna verdadeiro. Vincula o código de inicialização da DLL. Cria uma biblioteca de importação (. lib), se um arquivo de exportação (.exp) não for especificado na linha de comando; Você pode vincular a biblioteca de importação para aplicativos que chamam a sua DLL. Interpreta /FE (um arquivo EXE nome) como a nomeação de uma DLL em vez de um arquivo. exe; o nome padrão do programa se torna basename. dll em vez de basename. exe. Implica /MT a menos que você especifique explicitamente /MD. |
/LDd |
Cria uma DLL de depuração.Defines _MT and _DEBUG. |
Para obter mais informações sobre bibliotecas de tempo de execução c e quais bibliotecas são usadas quando você compilar com /CLR (common Language Runtime Compilation), consulte Recursos da biblioteca CRT.
Todos os módulos passados para uma determinada invocação do vinculador devem foram compilados com a mesma opção de compilador biblioteca run-time (/MD, /MT, /LD).
Para obter mais informações sobre como usar as versões de depuração das bibliotecas de tempo de execução, consulte Referência de biblioteca de tempo de execução c.
O artigo Q140584 do Knowledge Base também discute como escolher a biblioteca de tempo de execução c apropriada.
Para mais informações sobre DLLs, consulte DLLs no Visual C++.
Para definir esta opção de compilador no ambiente de desenvolvimento Visual Studio
Abra o projeto Páginas de propriedades caixa de diálogo.Para obter detalhes, consulte:Como: abrir páginas de propriedades do projeto.
Clique no C/C++ pasta.
Clique no Geração de código página de propriedades.
Modificar o Biblioteca de tempo de execução propriedade.
Para definir essa opção de compilador programaticamente
- Consulte RuntimeLibrary.