Sdílet prostřednictvím


Vyvolání linkeru z prostředí CL

CL automaticky vyvolá po kompilaci, pokud není použit parametr /c propojovacího programu.CL předává obj soubory vytvořené během kompilace názvy a názvy všech souborů, které zadané na příkazovém řádku propojovacího programu.Možnosti uvedené v systémové proměnné odkaz používá propojovací program.Volba/Link určete možnosti propojovacího programu v příkazovém řádku CL.Volba/Link parametry přednost odkaz proměnné prostředí.Možnosti v následující tabulce potlačit propojení.

Možnost

Popis

/c

Kompilaci bez propojení

/ /P E, /EP,

Předběžně zpracovat bez kompilace a propojování

/Zg

Generovat prototypy funkce

/Zs

Kontrola syntaxe

Další informace o propojení naleznete v tématu Možnosti propojovacího programu.

Příklad

Předpokládejme, že jsou kompilace zdrojových souborů tři C: MAIN.c, MOD1.c a MOD2.c.Každý soubor obsahuje volání funkce definovaná v jiný soubor:

  • MAIN.c volá funkci func1 v MOD1.c a funkce func2 v MOD2.c.

  • Standardní knihovna funkcí volá MOD1.c printf_s a scanf_s.

  • Grafické funkce s názvem volá MOD2.c myline a mycircle, které jsou definovány v knihovně s názvem MYGRAPH.lib.

K sestavení tohoto programu, kompilace z příkazového řádku následující příkaz:

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

CL první kompiluje zdrojové soubory C a vytvoří objekt soubory MAIN.obj, MOD1.obj a MOD2.obj.Kompilátor vloží standardní knihovny v jednotlivých souborech obj.Další informace naleznete v tématu Knihovna Run-Time použití.

CL názvy souborů obj, spolu s názvem MYGRAPH.lib, předává do propojovacího programu.Propojovací program řeší externí odkazy takto:

  1. V MAIN.obj, odkaz na func1 je vyřešen pomocí definice v MOD1.obj; odkaz na func2 je vyřešen pomocí definice v MOD2.obj.

  2. V MOD1.obj, odkazy na printf_s a scanf_s , jsou vyřešeny pomocí definice propojovacího programu najde knihovny s názvem v MOD1.obj.

  3. V MOD2.obj, odkazy na myline a mycircle , jsou vyřešeny pomocí definice v MYGRAPH.lib.

Viz také

Referenční dokumentace

Možnosti kompilátoru

Nastavení možností kompilátoru