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 pro 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 souboru .obj vytvořeném ze souboru .pch. Kompilátor tyto informace nevloží do souborů .obj následně vytvořených ze souboru .pch; vloží křížové odkazy na informace. Bez ohledu na to, kolik souborů .obj 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 pomocí předkompilované hlavičky ETC.pch zkompilovat zdrojový soubor G.cpp:

CL /YuETC.H /Z7 G.CPP

Soubor objektu G.obj neobsahuje informace o ladění pro předkompilovanou hlavičku, ale jednoduše odkazuje na tyto informace v souboru F.obj. Všimněte si, že musíte 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