Compartilhar via


CL invoca o vinculador

O CL invocada automaticamente o vinculador depois de criar a menos que a opção /c é usada. Passagens de CL ao vinculador os nomes dos arquivos de .obj criados durante a compilação e os nomes de outros arquivos especificados na linha de comando. O vinculador usa as opções listadas na variável de ambiente de LINK. Você pode usar a opção /link para especificar opções do vinculador na linha de comando de CL. Opções que seguem a substituição da opção /link aqueles na variável de ambiente de LINK. As opções na tabela a seguir suprimem vincular.

Opção

Descrição

/c

Construir sem vincular

/E, /EP, /P

Preprocess sem compilar ou vincular

/Zg

Gerencia protótipos de função

/Zs

Verifique a sintaxe

Para obter detalhes adicionais sobre vincular, consulte Opções do vinculador.

Exemplo

Suponha que você está criando três arquivos de origem de C: 2.0 MAIN.c, MOD1.c, e. MOD2.c. Cada arquivo inclui uma chamada a uma função definida em um arquivo diferente:

  • MAIN.c chama a função func1 em MOD1.c e a função func2 em. MOD2.c.

  • MOD1.c chama as funções da biblioteca printf_s e scanf_sdo padrão.

  • MOD2.c chama as funções dos gráficos myline nomeadas e mycircle, que são definidas em uma biblioteca MYGRAPH.lib nomeada.

Para criar esse programa, compile com a seguinte linha de comando:

CL MAIN.c MOD1.C MOD2.C MYGRAPH.lib

CL O primeiro os arquivos de origem cria C e cria arquivos de objeto MAIN.obj, MOD1.obj, e MOD2.obj. O compilador coloca o nome da biblioteca padrão em cada arquivo de .obj. Para obter mais detalhes, consulte Use a biblioteca de tempo de execução.

O CL transmite os nomes dos arquivos de .obj, junto com o nome MYGRAPH.lib, ao vinculador. O vinculador resolve as referências externas como segue:

  1. Em MAIN.obj, a referência a func1 é resolvida usando a definição em MOD1.obj; a referência a func2 é resolvida usando a definição em MOD2.obj.

  2. Em MOD1.obj, as referências a printf_s e scanf_s são resolvidos usando as definições que encontra na biblioteca do vinculador denominado dentro de MOD1.obj.

  3. Em MOD2.obj, as referências a myline e mycircle são resolvidos usando as definições em MYGRAPH.lib.

Consulte também

Referência

Opções do compilador

Definindo opções do compilador