/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 /INCREMENTALzastę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 .ilkelementu , .exelub .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

  1. 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).

  2. Wybierz stronę właściwości Ogólne konsolidatora>właściwości>konfiguracji.

  3. Zmodyfikuj właściwość Włącz łączenie przyrostowe .

Aby programowo ustawić tę opcję konsolidatora

  1. Zobacz: LinkIncremental.

Zobacz też

Dokumentacja konsolidatora MSVC
Opcje konsolidatora MSVC
.ilk pliki jako dane wejściowe konsolidatora