Frage

Ich habe ein altes c ++ Projekt mit VC6 zusammengestellt.

Ich muß statisch eine neue Bibliothek verknüpfen, um eine neue Funktionalität zu implementieren.

Leider ist die neue Bibliothek ein Symbol definieren (d.h. _inflate), das bereits in einer zuvor verknüpften statischen Bibliothek definiert wird.

Natürlich kann ich nicht von jeder Bibliothek loszuwerden, und natürlich habe ich keinen Zugriff auf den Quellcode der Bibliothek.

Gibt es eine Möglichkeit, die Linker-Fehler (LNK2005) zu vermeiden?

War es hilfreich?

Lösung

Wenn Sie wissen, dass die beiden Versionen von _inflate identisch sind, oder zumindest „kompatibel“, dann können Sie die / FORCE:. Mehrere Linkeroption es zu erzwingen Namenskonflikte zu ignorieren

Natürlich, wenn es Links zu einer Version dieses Codes, die „unvereinbar“ in irgendeiner Art und Weise ist es nicht definiertem Verhalten führen kann.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top