Warnung LNK4075, wenn ein C++/CLI-Projekt verweist auf eine statische lib-Projekt mit /ZI (Edit And Continue)

Habe ich folgende Projekte in Visual Studio 2012 solution:

  • Native (keine /clr) static lib project, zusammengestellt mit /ZI für Bearbeiten Und Fortfahren.
  • C++/CLI-DLL-Projekt, Referenzen auf die oben genannten statischen lib.

C++/CLI Projekt erstellt mit folgendem Hinweis:

warning LNK4075: ignoring '/EDITANDCONTINUE' due to '/OPT:LBR' specification

Wenn /OPT:NOLBR ist Hinzugefügt, um die linker-Optionen für den C++/CLI Projekt, die Warnung wird:

warning LNK4075: ignoring '/EDITANDCONTINUE' due to '/INCREMENTAL:NO' specification

Jeder Versuch, ändern Sie die inkrementelle Verknüpfung der C++/CLI-Projekt nicht ändern, dass die Warnung (C++/CLI-Projekte, die nie link inkrementell sowieso).

Ich verstehe, dass ich nicht in der Lage sein zu verwenden, zu Bearbeiten Und Weiter in die C++/CLI Projekt, da dies nicht unterstützt. In der Tat, ändern /ZI zu /Zi (deaktivieren von "Bearbeiten Und Fortfahren") in der statischen lib-Projekt beseitigt die Warnung, aber ich kann das nicht tun - andere nicht-CLR-Konsumenten, die lib verwenden müssen, die "Bearbeiten Und Fortfahren".

Wie kann ich loswerden dieser Warnung ohne deaktivieren der "Bearbeiten Und Fortfahren" in der statischen lib (und hoffentlich ohne separate build-Konfiguration für den einheitlichen und CLR-Anwender von der statischen lib)? Ich meine, gibt es eine Möglichkeit, Fragen an den linker zu ignorieren, die /EDITANDCONTINUE Richtlinie, die eingebettet ist in der referenzierten statischen lib (viel in der gleichen Weise, dass /NODEFAULTLIB ignorieren können /DEFAULTLIB Richtlinien)?

Habe ich eine minimal VS Lösung, dass reproduziert das beschriebene Problem.

InformationsquelleAutor Yodan Tauber | 2014-02-23
Schreibe einen Kommentar