Сообщения Clion и CMake

Я только начал использовать Clion IDE. Может быть, это где-то написано, но я не видел его в поиске Google. Если я вставлю вызов message() в мой скрипт CMake, где в Clion я смогу увидеть вывод? Эти вызовы сообщений - единственный способ, которым я знаю, как отлаживать мои сценарии CMake.

Ответы

Ответ 1

Используйте message(WARNING ...) вместо message(...). Предупреждения отправляются в stderr.

Ответ 2

Еще одно возможное обходное решение:

  • отключить "cmake auto-reload", если он включен
  • после того, как вы что-то изменили в своем файле cmake, не запускайте "Обновить изменения"
  • запустить/создать проект

Когда clion начинает сборку, он понимает, что файлы cmake не обновлены и перезагружают их, но, как и другой вывод сборки, он отображается на вкладке "Сообщения".

Ответ 3

Появляются предупреждения и ошибки, но в настоящее время подавляются другие сообщения. Тем не менее, есть запрос функции относительно этой проблемы.

Ответ 4

Начиная с CLion 2016.2.2, Строка # CL-162.1967.7, CLion отображает сообщение CMake (STATUS) в окне инструмента сообщений (Alt + 0) во время сборки (Ctrl + F9), когда проект сначала создается после изменений to CMakeLists.txt. Но, как отмечено в других ответах, этот вывод не отображается в окне инструмента CLion CMake (как многие предпочли бы).

Обновление: Выше я написал, что CLION отображает сообщение (STATUS). " Теперь я обнаружил, что это происходит с перерывами. @Michael писал, что это происходит, если вы пропустите перезагрузку cmake после изменения вашего файла cmake, но я обнаружил, что CLion иногда не отображает вывод CMake в окне инструментальных сообщений даже в этом состоянии. До сих пор я не обнаружил точных обстоятельств, которые делают вывод CLION show CMake message (STATUS), будет сообщаться здесь, когда/если я это делаю.

Большое обновление: CLion открывает 2016.3 EAP: пользовательские литералы, выход CMake, завершение ключевых слов C11 и многое другое, См., В частности: Окно вывода CMake: отдельное я думаю, что он исправляет всю эту проблему: CLION 2016.3 EAP добавляет новую вкладку, содержащую вывод команды CMake.

Конечно, это EAP, который поставляется с предостережением JetBrains:

Важно отличать EAP от традиционного предварительного выпуска программного обеспечения. Обратите внимание, что качество версий EAP может время от времени быть ниже даже обычных бета-стандартов.

Поэтому используйте его на свой страх и риск, но вы можете судить об этом, стоит ли риск, если вам нужна отладка CMake.