Sdílet prostřednictvím


/Yd (Umístit informace o ladění do souboru objektu)

Paces dokončí informace o ladění ve všech souborech objektů vytvořených z předkompilovaného souboru hlavičky (.pch) při použití s možnostmi /Yc a /Z7 . Zastaralé

Syntaxe

/Yd

Poznámky

/Yd je zastaralý; Visual C++ teď podporuje více objektů zapisovaných do jednoho souboru .pdb, místo toho použijte /Zi . Seznam zastaralých možností kompilátoru najdete v tématu Zastaralé a odebrané možnosti kompilátoru v možnostech kompilátoru uvedených podle kategorie.

Pokud nepotřebujete distribuovat knihovnu obsahující informace o ladění, použijte místo /Z7 a /Yd možnost /Zi.

Ukládání úplných informací o ladění v každém souboru .obj je nezbytné pouze k distribuci knihoven, které obsahují informace o ladění. Zpomaluje kompilaci a vyžaduje značné místo na disku. Při použití /Yc a /Z7 bez /Yd ukládá kompilátor běžné informace o ladění v prvním .obj souboru vytvořeném ze souboru .pch. Kompilátor tyto informace nevloží do .obj souborů následně vytvořených ze souboru .pch; vloží křížové odkazy na informace. Bez ohledu na to, kolik .obj souborů používá soubor .pch, obsahuje pouze jeden soubor .obj informace o společném ladění.

I když toto výchozí chování vede k rychlejším časům sestavení a snižuje nároky na místo na disku, je nežádoucí, pokud malá změna vyžaduje opětovné sestavení souboru .obj obsahujícího běžné informace o ladění. V tomto případě musí kompilátor znovu sestavit všechny soubory .obj obsahující křížové odkazy na původní soubor .obj. Pokud je společný soubor .pch používán různými projekty, je závislost na křížových odkazech na jeden soubor .obj obtížné.

Další informace o předkompilovaných hlavičkách najdete tady:

Nastavení tohoto parametru kompilátoru ve vývojovém prostředí Visual Studio

  1. Otevřete dialogové okno Stránky vlastností projektu. Podrobnosti najdete v tématu Nastavení kompilátoru C++ a vlastností sestavení v sadě Visual Studio.

  2. Vyberte stránku vlastností příkazového řádku C/C++>Vlastnosti>konfigurace.

  3. Do pole Další možnosti zadejte možnost kompilátoru.

Programové nastavení tohoto parametru kompilátoru

Příklady

Předpokládejme, že máte dva základní soubory, F.cpp a G.cpp, z nichž každý obsahuje tyto příkazy #include :

#include "windows.h"
#include "etc.h"

Následující příkaz vytvoří předkompilovaný soubor hlaviček ETC.pch a soubor objektu F.obj:

CL /YcETC.H /Z7 F.CPP

Soubor objektu F.obj obsahuje informace o typu a symbolu pro WINDOWS.h a ETC.h (a všechny ostatní soubory hlaviček, které obsahují). Teď můžete použít předkompilovanou hlavičku ETC.pch ke kompilaci zdrojového souboru G.cpp:

CL /YuETC.H /Z7 G.CPP

Soubor objektu G.obj neobsahuje informace o ladění pro předkompilované hlavičky, ale jednoduše odkazuje na tyto informace v F.obj souboru. Všimněte si, že je nutné propojit se souborem F.obj.

Pokud předkompilovaná hlavička nebyla zkompilována pomocí /Z7, můžete ji přesto použít v pozdějších kompilacích pomocí /Z7. Informace o ladění se však umístí do aktuálního souboru objektu a místní symboly pro funkce a typy definované v předkompilované hlavičce nejsou pro ladicí program k dispozici.

Viz také

Parametry kompilátoru MSVC
Syntaxe příkazového řádku kompilátoru MSVC