Abbiamo un grande progetto,> 1M di codice in circa 300 DLL. Finora abbiamo utilizzato VS6.Enormi file OBJ nella compilazione C++ VS2008 rispetto a VS6
Ora ho convertito tutto in VS2008, tutte le compilazioni, i collegamenti e, cosa più importante, corre!
==> Tuttavia ... i file OBJ compilati risultanti sono X 10 più grandi e il collegamento è estremamente lento, con il linker che colpisce spesso> 1 GB di memoria.
Parte delle implicazioni sono che ho bisogno di compilare determinati progetti con/bigobj.
Il risultato è una build che è passata da circa 1:45 su un desktop a 3 ore. Le DLL e le LIB hanno approssimativamente le stesse dimensioni del vecchio build VS6.
Ho letto tutto quello che ho trovato qui ma non ho trovato un rimedio a questo problema. Se si tratta di informazioni aggiuntive su DEBUG, non lo voglio. Ne avevo abbastanza prima. La dimensione in uscita è aumentata, ma non così tanto ...
Qualcuno ha qualche idea? O è la mia unica opzione per abbattere i progetti in unità molto più piccole? Ristrutturare la mia unica speranza ?! Sicuramente c'è una bandiera segreto mi mancava ...
Edit1 (13/07/2012 12: 20BST) Ho confrontato dumpbin di un Obj creato da VS6 vs. VS2008. Quello nel 2008 appare come come "collegamento statico". In VS6 contiene alcuni simboli tutti dalla DLL corrente. In VS2008 contiene simboli da (probabilmente) tutte le librerie da cui dipende. Le dimensioni del dumpbin sono 66kb e 32,000kb per VS6 e VS2008, rispettivamente.
Provare a disabilitare "informazioni di debug" nelle impostazioni del progetto (ramo C++). –
_ "Abbiamo un grande progetto,> 1 milione di righe di codice in circa 300 DLL. Finora abbiamo utilizzato VS6." _ Non mi lamenterò più del mio lavoro. – Luke
@IvanShcherbakov: questo non mi impedisce di eseguire facilmente il debug? – aabramovich