2015-01-09 13 views
8

Quando costruisco un progetto C++ in Visual Studio il processo di ottenere nel bloccati mentre Generazione Codice:studio visivo nel codice Generazione bloccato

1>------ Rebuild All started: Project: myWrapper, Configuration: Release Win32 ------ 
1> funzioni_ausiliarie.cpp 
1> myWrapperFunction.cpp 
1> NLP_eta_tre_spline.cpp 
1> Generating Code... 

MSVS risponde ancora e sembra essere di lavoro, ma ho aspettato più di 10 minuti e non ha finito. Alla fine ho annullato il processo. Invece, costruendo in modalità debug si affievolisce in 20 secondi.

Ho anche provato a disabilitare "Whole Program Optimization" e "Multi-processor compilation" in opzioni di compilazione C++ e ho lasciato vuoto il parametro "Link Time Code Generation" nelle opzioni del linker (ovviamente per la configurazione di rilascio) ma il problema ancora si verifica.

Qualsiasi aiuto sarebbe molto apprezzato.

risposta

9

Ho applicato questo http://www.gamedev.net/topic/627047-visual-studio-generating-code-infinitely/. Ovvero: nelle proprietà di prject, impostando C++ -> Optimization -> Optimization su "Disable".

Ora funziona correttamente. Ho anche impostato i valori originali "Ottimizzazione del programma intero", "Compilazione multiprocessore" e "Generazione del codice temporale del collegamento" e funziona.

+1

Questa soluzione ha funzionato per me. Ma mi chiedo, perché il problema sta accadendo. Forse un bug in VS? –

+0

Ouch. Disattivare le ottimizzazioni all'ingrosso è un grosso martello. –

0

Con VS2017 (15.5.0), mi sono imbattuto in un problema in cui la creazione di una libreria di terze parti per Rilascio ha sospeso il compilatore in "Generazione del codice" per decine di minuti e ho rinunciato ad aspettare. Stavo usando l'ottimizzazione del programma intero, ma disattivarlo non ha aiutato.

Avevo anche utilizzato Ottimizzazione impostata su Velocità massima (/ O2). Ho cambiato in personalizzato e accesi /Ob2, /Oi, /Os, e /Oy. La compilazione completata in pochi secondi. Per la biblioteca che stavo usando, era abbastanza buono.

Problemi correlati