Ich habe ein Visual Studio C++ Projekt beschäftigen, wo ich die Einstellungen Linker verwendenWie mit 3rd-Party-C++ Bibliotheken LNK4099 Warnung in Visual Studio
/WX (TreatWarningsAsLinkerErrors=true)
In Debug ich mit/Zi (Debug-Datenbank) zu kompilieren, die funktioniert fein.
Jetzt habe ich ein Drittanbieter-SDK, das mit einer statischen Bibliothek, aber keine PDB-Datei kommt. Sobald ich diese Datei in Debug verbinden, erhalte ich
LNK4099: 3rd-party.lib(3rd-party.obj) : warning LNK4099: PDB "vc90.pdb" was not found "3rd-party.lib(3rd-party.obj)" or with "C:\OutDir\vc90.pdb"
Bitte beachten Sie, dass diese Meldung irreführend, da Platzierung vc90.pdb neben 3rd-party.lib das Problem nicht lösen, da der Quellcode und pdb dieser 3rd-Party-Lib ist nicht verfügbar, also würde der Linker sich dann immer noch beschweren.
Um diese Linker-Warnung loszuwerden, was sind meine Optionen hier?
Der einfachste Weg, wenn Sie einen VS-Post 2010 (also 2012/2013/2015) verwenden, ist das Hinzufügen der Option/ignore: 4099 zum Linker. Sollte diese spezielle Warnung ignorieren. Sicher, dass vor 2012 diese Warnung ausdrücklich ignoriert wurde ... Es existierte aber war eine Art "Ja, aber es ist uns egal" Warnung. – Gibet
/ignorieren: 4099 funktioniert tatsächlich. Der Nachteil ist, ich möchte nicht, dass LNK4099 vollständig unterdrückt wird, aber das ist besser als nichts. –
@Gibet: Bitte machen Sie aus Ihrem Kommentar eine Antwort. Es ist eine gute Antwort und wird Menschen in der Zukunft helfen. Sie finden es eher, wenn es eine Antwort ist. –