2012-01-30 33 views
7

Mi chiedo se sia possibile sopprimere gli avvisi specifici del compilatore in Qt-Creator.Come sopprimere gli avvisi in Qt Creator

mio g ++ - 4.5 stampe:

avvertimento: tipo enumeral e non enumeral nell'espressione condizionale

Vorrei sbarazzarsi di esso, perché è molto fastidioso.

  • Ubuntu 11.04 x64
  • g ++ - 4.5
  • QtCreator 2.01
  • Qt 4,7

Grazie!

risposta

0

probabilmente avete due scelte:

  1. risolvere l'avviso stesso (gli sguardi di cui sopra, come probabilmente avete bisogno di un cast)
  2. trovare il nome delle avvertenze che si desidera rimuovere emesso da g ++ e quindi aggiungili nel tuo file .pro al CFLAGS con un "no" davanti. Qualcosa di simile:

    CFLAGS + = -Wno-my-super-warning-I-trovato

+0

Grazie, questo funziona per un avvertimento generale, ma purtroppo non per questo caso ... Non so come rimuovere questo avviso ... – linello

2

Ho guardato attraverso le opzioni di avviso gcc. Gcc ha l'opzione -Wenum-compare che è responsabile per l'avviso, tuttavia non c'è -Wno-enum-compare. L'opzione -Wenum-compare è probabilmente impostata da -Wall a meno che non sia impostata in modo esplicito. Quindi, vorrei suggerire di disabilitare -Wall

+0

'-Wno-enum-compare' funziona per me (versione g ++ 4.5.2). – TonyK

4

È necessario utilizzare questo:

QMAKE_CXXFLAGS + = -Wno-enum-compare

se si ottiene un messaggio di avviso che termina in -Wenum- confrontare, ad esempio.

Si noti inoltre che alcuni avvisi non possono essere soppressi secondo la documentazione di GCC take a look at this for ones that you can't suppress, in questo modo non si è dato la falsa idea che i bandiere non funzionano bene.

Il modo migliore per sapere se le bandiere vengono passati al compilatore, ovviamente, è quello di guardare l'output del compilatore, e assicurarsi che le bandiere sono lì, si dovrebbe vedere -Wno-enum-confronto nel riga di comando, ad esempio, anche se la bandiera non sopprime nulla. Sareste sorpresi di quanto possa essere difficile trovare informazioni su cose come questa, ci sono voluti degli scavi e ho finito per trovarlo dal completamento automatico che funziona quando si modificano i file .pro, se si riscontrano problemi nella modifica dei file .pro , premere Ctrl + Spazio (o iniziare a digitare una parola e premere Shift + Home), per ottenere un elenco di cose valide che è possibile utilizzare nel proprio file .pro come qualsiasi altro file sorgente usuale.Mi ha aiutato a trovare la cosa giusta (QMAKE_CXXFLAGS, come risulta, di solito non è quello che la gente suggerisce, per qualche motivo) ... Oh sì e questo è su Qt versione 4.8, creatore 2.4, quindi potrebbe essere cambiato, da questo post (sembra che mi piaccia fare molto, ho visto che le versioni più recenti sono già cambiate drasticamente).

+0

Non funziona. Sto usando Qt Creator 4.1.0 (4.1.0-rc1) –