C ++ Qt – Как добавить «-std = c ++ 11» в make-файл, который генерируется qmake?

Я разрабатываю программу в Qt. Его make-файл автоматически создается из файла .pro. Мне нужно использовать некоторый код, для которого нужно установить флаг -std = c ++ 11 для g ++. Где в .pro следует добавить этот флаг? (изменение только Makefile не будет работать, поскольку оно будет перезаписано вновь созданным, каждый раз, когда я создаю проект).

Вы можете добавить следующее в Qt .pro для C ++ 11: –

 CONFIG += c++11 

Начиная с Qt 5.4, C ++ 14 может быть включен с помощью

 CONFIG += c++14 

Вы можете изменить флаги CXX:

 QMAKE_CXXFLAGS += -std=c++11 

Обычно я устанавливаю его как:

 QMAKE_CXXFLAGS += -std=c++11 -Wall -Wextra -pedantic 

Возможно, вам захочется вставить конкретный флаг (который вы упомянули)

 QMAKE_CXXFLAGS += -std=c++11 

в вашем файле .pro, но это будет вставлять именно этот флаг от вашего имени.

Этого недостаточно. Правильный способ – вставить вместо этого

 CONFIG += c++11 

в файле .pro. Два или три необходимых изменения затем выполняются qmake :

  1. -std=c++11 .
  2. -stdlib=libc++ .
  3. Если вы находитесь на Mac, -mmacosx-version-min=10.6 становится -mmacosx-version-min=10.7 . (Возможно, некоторые аналогичные изменения необходимы для других ОС или версий ОС.)

(Аналогичная проблема в 1 и 2 ).

Я использую Snow Leopad 10.6.8 и gcc 4.9, мне пришлось использовать

 CONFIG += c++11 

вместо

 QMAKE_CXXFLAGS += -std=c++11 

Последний просто не был признан.

 CONFIG += c++11 

в .pro-файле работает для меня с Qt4 SDK после установки qt5-default на моем рабочем столе Ubuntu:

 sudo apt install qt5-default 

В любом случае сгенерированный make-файл содержит параметр -std=c++0x я подозреваю, достаточен для компиляции моего кода на C ++ 11.

  • Использование DLL на основе Qt в приложении, отличном от Qt
  • Сериализация с Qt
  • Мое соединение с сигналом / слотом не работает
  • Определить сигналы, подключенные к данному слоту в Qt
  • Как сообщить QWebPage не загружать определенные типы ресурсов?
  • Как создать простое консольное приложение Qt в C ++?
  • Нарисуйте прямоугольник на qglwidget в определенное время
  • Beyond Stack Sampling: C ++ Profilers
  • Каков наиболее эффективный способ отображения декодированных видеокадров в Qt?
  • Добавление внешней библиотеки в проект Qt Creator
  • Как настроить CDB в Qt Creator?
  • Давайте будем гением компьютера.