/INCREMENTAL
(Połącz przyrostowo)
Określa, czy należy łączyć przyrostowo, czy zawsze wykonywać pełne łącze.
Składnia
/INCREMENTAL
[:NO
]
Uwagi
Opcja /INCREMENTAL
konsolidatora kontroluje sposób obsługi łączenia przyrostowego przez konsolidator.
Domyślnie konsolidator jest uruchamiany w trybie przyrostowym. Aby zastąpić domyślny link przyrostowy, określ wartość /INCREMENTAL:NO
.
Program połączony przyrostowo jest funkcjonalnie równoważny programowi, który nie jest połączony przyrostowo. Jednak ponieważ jest on przygotowany do kolejnych łączy przyrostowych, przyrostowo połączony plik wykonywalny, biblioteka statyczna lub plik biblioteki linku dynamicznego:
Jest większy niż program połączony przyrostowo z powodu wypełnienia kodu i danych. Wypełnienie umożliwia konsolidatorowi zwiększenie rozmiaru funkcji i danych bez ponownego tworzenia pliku.
Może zawierać sekcje thunk skoków do obsługi przeniesienia funkcji do nowych adresów.
Uwaga
Aby upewnić się, że końcowa kompilacja wydania nie zawiera dopełnienia lub thunks, połącz program nie przyrostowo.
Aby połączyć przyrostowo niezależnie od wartości domyślnej, określ wartość /INCREMENTAL
. Po wybraniu tej opcji konsolidator wyświetla ostrzeżenie, jeśli nie może łączyć się przyrostowo, a następnie łączy program nie przyrostowo. Niektóre opcje i sytuacje /INCREMENTAL
zastępują .
Większość programów może być łączonych przyrostowo. Jednak niektóre zmiany są zbyt duże, a niektóre opcje są niezgodne z łączeniem przyrostowym. Polecenie LINK wykonuje pełne połączenie, jeżeli jest określona którakolwiek z następujących opcji:
Łącze przyrostowe nie jest zaznaczone (
/INCREMENTAL:NO
)/OPT:REF
jest zaznaczona/OPT:ICF
jest zaznaczona/OPT:LBR
jest zaznaczona/ORDER
jest zaznaczona
/INCREMENTAL
jest implikowane, gdy /DEBUG
jest określony.
Poza tym polecenie LINK wykonuje pełne połączenie, jeżeli wystąpi którakolwiek z następujących sytuacji:
Brak pliku stanu przyrostowego (
.ilk
). (LINK tworzy nowy.ilk
plik w ramach przygotowań do późniejszego łączenia przyrostowego).Nie ma uprawnień do zapisu dla
.ilk
pliku. (LINK ignoruje.ilk
plik i łączy nie przyrostowo).Brak pliku wyjściowego
.exe
lub.dll
.Sygnatura czasowa
.ilk
elementu ,.exe
lub.dll
jest zmieniana.Opcja LINK została zmieniona. Większość opcji LINK po zmianie między kompilacjami powoduje pełne łącze.
Plik obiektu (
.obj
) jest dodawany lub pomijany.
Łącze przyrostowe tworzy lub aktualizuje plik bazy danych .ilk
łącza przyrostowego. Możesz określić nazwę i lokalizację tego pliku przy użyciu /ILK
opcji konsolidatora (plik bazy danych przyrostowej nazwy). Aby uzyskać więcej informacji na temat .ilk
pliku, zobacz .ilk
pliki jako dane wejściowe konsolidatora.
Aby ustawić tę opcję konsolidatora w środowisku programowania Visual Studio
Otwórz okno dialogowe Strony właściwości projektu. Aby uzyskać szczegółowe informacje, zobacz Set C++ compiler and build properties in Visual Studio (Ustawianie właściwości kompilatora języka C++ i kompilowania w programie Visual Studio).
Wybierz stronę właściwości Ogólne konsolidatora>właściwości>konfiguracji.
Zmodyfikuj właściwość Włącz łączenie przyrostowe .
Aby programowo ustawić tę opcję konsolidatora
- Zobacz: LinkIncremental.
Zobacz też
Dokumentacja konsolidatora MSVC
Opcje konsolidatora MSVC
.ilk
pliki jako dane wejściowe konsolidatora