Você pode usar o comment(lib...) de #pragma para especificar as opções do vinculador no Microsoft C++

IMPORTANTE: Este artigo foi traduzido pelo software de tradução automática da Microsoft e eventualmente pode ter sido editado pela Microsoft Community através da tecnologia Community Translation Framework (CTF) ou por um tradutor profissional. A Microsoft oferece artigos traduzidos automaticamente por software, por tradutores profissionais e editados pela comunidade para que você tenha acesso a todos os artigos de nossa Base de Conhecimento em diversos idiomas. No entanto, um artigo traduzido pode conter erros de vocabulário, sintaxe e/ou gramática. A Microsoft não é responsável por qualquer inexatidão, erro ou dano causado por qualquer tradução imprecisa do conteúdo ou por seu uso pelos nossos clientes.

Clique aqui para ver a versão em Inglês deste artigo: 153901
Este artigo foi arquivado. É oferecido "como está" e não será mais atualizado.
Sintomas
O pragma comment permite ao usuário inserir comentários em um arquivo de objeto ou arquivo executável. O especificador lib permite que o usuário passe esse comentário para o vinculador especifique as bibliotecas adicionais para vincular ao usar o módulo do objeto. Alguns usuários utilizam o pragma de comentário lib para adicionar opções do vinculador, bem como os nomes da biblioteca, como:
   #pragma comment(lib, "MSVCRT -VERBOSE")				
Esta linha em Visual C++ 2. x, poderia passar a seqüência para o vinculador como é, resultando na adição do /VERBOSE opção de vinculador, bem como o arquivo MSVCRT.Biblioteca LIB. Esse comportamento não foi especificado para funcionar dessa maneira. O compilador não coloca aspas ao redor de cadeia de caracteres de comentário para que espaços seriam delimitar o texto.

No Visual C++ 4.x e posterior, o compilador corretamente coloca aspas a cadeia de caracteres de comentário, assim, fazendo com que o código acima gerar o erro a seguir:
LINK: erro fatal LNK1104: não é possível abrir o arquivo "MSVCRT-VERBOSE.lib"
Resolução
Use o pragma novo a seguir para especificar as opções do vinculador:
#pragma comment(linker, "<linker options>")				
Situação
Esse comportamento é por design.
Mais Informações

Código de exemplo para reproduzir o problema:

// Compile options needed: none// Compile the code in Visual C++ 4.x or later// test.c#pragma comment(lib,"MYLIBRARY -VERBOSE")void main(void){}				
Você receberá a seguinte mensagem de erro:
LINK: erro fatal LNK1104: não é possível abrir o arquivo "MYLIBRARY-VERBOSE.lib"
Referências
Para obter mais informações sobre diretivas de #pragma, consulte o seguinte site da MSDN:
10,00 10.10 10.20

Propriedades

ID do Artigo: 153901 - Última Revisão: 12/04/2015 15:05:45 - Revisão: 1.0

Microsoft Visual C++ 4.0 Standard Edition

  • kbnosurvey kbarchive kbcompiler kbprb kbusage kbmt KB153901 KbMtpt
Comentários