Share via


/INCREMENTAL (Tautan bertahap)

Menentukan apakah akan menautkan secara bertahap atau selalu melakukan tautan lengkap.

Sintaks

/INCREMENTAL[:NO]

Keterangan

Opsi /INCREMENTAL linker mengontrol bagaimana linker menangani penautan inkremental.

Secara default, linker berjalan dalam mode inkremental. Untuk mengambil alih tautan inkremental default, tentukan /INCREMENTAL:NO.

Program yang ditautkan secara bertahap secara fungsional setara dengan program yang ditautkan secara tidak bertahap. Namun, karena disiapkan untuk tautan inkremental berikutnya, file pustaka yang dapat dieksekusi yang ditautkan secara bertahap, pustaka statis, atau pustaka tautan dinamis:

  • Lebih besar dari program yang tidak ditautkan secara bertahap karena padding kode dan data. Padding memungkinkan linker untuk meningkatkan ukuran fungsi dan data tanpa membuat ulang file.

  • Mungkin berisi jump thunks untuk menangani relokasi fungsi ke alamat baru.

    Catatan

    Untuk memastikan bahwa build rilis akhir Anda tidak berisi padding atau thunks, tautkan program Anda secara non-bertahap.

Untuk menautkan secara bertahap terlepas dari defaultnya, tentukan /INCREMENTAL. Ketika opsi ini dipilih, linker mengeluarkan peringatan jika tidak dapat menautkan secara bertahap, lalu menautkan program secara tidak bertahap. Opsi dan situasi tertentu mengambil /INCREMENTALalih .

Sebagian besar program dapat ditautkan secara bertahap. Namun, beberapa perubahan terlalu bagus, dan beberapa opsi tidak kompatibel dengan penautan bertahap. LINK melakukan tautan lengkap jika salah satu opsi berikut ditentukan:

  • Tautan Secara Bertahap tidak dipilih (/INCREMENTAL:NO)

  • /OPT:REF dipilih

  • /OPT:ICF dipilih

  • /OPT:LBR dipilih

  • /ORDER dipilih

/INCREMENTAL tersirat ketika /DEBUG ditentukan.

Selain itu, LINK melakukan tautan lengkap jika salah satu situasi berikut terjadi:

  • File status inkremental (.ilk) hilang. (LINK membuat file baru .ilk sebagai persiapan untuk penautan inkremental berikutnya.)

  • Tidak ada izin tulis untuk file tersebut .ilk . (LINK mengabaikan .ilk file dan tautan secara non-bertahap.)

  • File .exe atau .dll output hilang.

  • Tanda waktu .ilk, , .exeatau .dll diubah.

  • Opsi LINK diubah. Sebagian besar opsi LINK, saat diubah di antara build, menyebabkan tautan lengkap.

  • File objek (.obj) ditambahkan atau dihilangkan.

Tautan inkremental membuat atau memperbarui file database .ilk tautan inkremental. Anda dapat menentukan nama dan lokasi file ini dengan menggunakan /ILK opsi penautan (Nama file database bertambah bertahas). Untuk informasi selengkapnya tentang file, .ilk lihat .ilk file sebagai input linker.

Untuk mengatur opsi linker ini di lingkungan pengembangan Visual Studio

  1. Buka kotak dialog Halaman Properti proyek. Untuk detailnya, lihat Mengatur pengkompilasi C++ dan membuat properti di Visual Studio.

  2. Pilih halaman properti Umum Linker>Properti>Konfigurasi.

  3. Ubah properti Aktifkan Penautan Inkremental.

Untuk menyetel opsi linker ini secara terprogram

  1. Lihat LinkIncremental.

Baca juga

Referensi linker MSVC
Opsi linker MSVC
.ilk file sebagai input linker