2015-05-20 2 views
14

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

+0

Есть ли в IDE окно журнала или что-то еще? – Joel

+0

Да, но он ориентирован на выходы gcc, ld и т. Д. CMake печатает на stdout, но окно журнала не улавливает его. – krapht

+0

Возможно, вам нужно настроить его для запуска cmake, чтобы вы могли поймать stdout, stderr и т. Д. – Joel

ответ

18

использование сообщения (ВНИМАНИЕ ...) вместо сообщения (...) предупреждений идут в стандартный вывод

+1

ВНИМАНИЕ больше не требуется (по крайней мере, в CLion 1.5). –

+1

Извините, что противоречил вам, Brent, но я использую CLion 2016.2.2 и имел ту же проблему, и только решение, предложенное Сергеем, исправило это для меня. –

3

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

7

Другой возможный обходной путь:

  • отключить «CMake автоперезагрузки», если она включена
  • после изменения что-то в файле CMake, не вызывают «Обновить изменения»
  • работы/постройте свой проект

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

+3

Это должен быть ответ. По крайней мере, для CLion 1.5+ он удаляет выход CMake, если включен Auto-Reload-CMake. –

2

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

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

Большое обновление:CLion opens 2016.3 EAP: user-defined literals, CMake output, C11 keywords completion and more. См., В частности: CMake output window: отдельный Я думаю, что он исправляет всю эту проблему: CLion 2016.3 EAP добавляет новую вкладку, содержащую вывод команды CMake.

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

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

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

Смежные вопросы