Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

How to specify -W4 (Visual Studio) in a Qt project?

My environment:

  • Windows 10, 64-bit
  • Microsoft Visual Studio 2015
  • Qt 5.6.2
  • Qt Creator 4.8.1

I want to compile my C++ project with -W4 instead of the default -W3, so I added this line to my .pro file:

QMAKE_CXXFLAGS += -W4

But then, I get many of these warnings (one for each compilation unit, I suppose):

cl : Command line warning D9025 : overriding '/W4' with '/W3'

From the command line, I can see that the command line does include both -W3 and -W4 (in this order).

So, my question: How can I swap the order of -W3 and -W4 (so -W4 would take precedence over -W3)?

Note that this did not work: I tried to modify Qt's configuration file C:\Qt\5.6.2\msvc2015_64\mkspecs\common\msvc-desktop.conf, by changing the value of variable QMAKE_CFLAGS_WARN_ON from -W3 to -W4, and not adding -W4 to QMAKE_CXXFLAGS in my .pro file, but that caused many (thousands) of warnings being generated by libraries. I also tried to append -W4 to QMAKE_CXXFLAGS_WARN_ON (instead of QMAKE_CXXFLAGS) in my .pro file, with the same result (thousands of warnings from libraries).

Also note that if I add -Wall (instead of -W4) to QMAKE_CXXFLAGS, then:

  • I do not get similar command line warnings (although -Wall is followed by -W3 on the command line)
  • I still get many warnings from libraries, but considerably less than with -W3 changed to -W4 in msvc-desktop.conf (or with -W4 appended to QMAKE_CXXFLAGS_WARN_ON in my .pro file).

I use qmake (through Qt Creator), so any solutions that would require editing the generated Visual Studio project files would be unacceptable.

like image 481
user1387866 Avatar asked Oct 26 '25 11:10

user1387866


1 Answers

The change to your project file appends the warning setting to the existing variable, which is predefined:

QMAKE_CXXFLAGS += -W4

You could either prepend the variable, or actually replace the existing warning variable setting with your own:

QMAKE_CXXFLAGS ~= s/-W3/-W4
like image 154
gavinb Avatar answered Oct 29 '25 00:10

gavinb



Donate For Us

If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!