CMake окраска ошибок и предупреждений - PullRequest
10 голосов
/ 01 апреля 2012

Есть ли способ, как получить цветной вывод из gcc, который вызывается из Makefile, сгенерированного cmake? Это значительно упростит отладку приложения.

Ответы [ 4 ]

6 голосов
/ 01 апреля 2012

Хотите ли вы красочный вывод из cmake двоичного файла? Для этого я не знаю никакого решения.

CMake может генерировать Makefiles, которые предоставляют подробное (и красочное) информацию о процессе сборки. Это можно включить следующим образом:

SET(CMAKE_COLOR_MAKEFILE ON)
# And optionally
SET(CMAKE_VERBOSE_MAKEFILE ON)

Если вы хотите, чтобы вывод gcc был окрашен, посмотрите на colorgcc скрипт perl. Установив его, попробуйте что-то вроде этого:

CC=/usr/bin/colorgcc cmake .....

Или используйте более новое решение, предложенное в другом ответе gfour - gccfilter

3 голосов
/ 23 сентября 2013

Попробуйте colout , он предназначен для плавного окрашивания вывода любой команды и поставляется с темой g ++ И cmake , которую можно использоватьвместе:

make something 2>&1 | colout -t cmake | colout -t g++

Помимо улучшения схемы цветов cmake, он даже применяет раскраску синтаксиса к коду, распечатанному g ++.

3 голосов
/ 01 апреля 2012

Скачать gccfilter (требуется perl, libregexp и libgetopt-argvfile), затем запустить:

gccfilter -c cmake ...

Это раскрасит сообщения от процесса сборки (я полагаю, это сообщения gcc).

0 голосов
/ 01 апреля 2012

На основе этого обсуждения Я создал псевдоним в ~/.bashrc для make:

alias make="make VERBOSE=1 2>&1 | sed -e 's%^.*: error: .*$%\x1b[37;41m&\x1b[m%' -e 's%^.*: warning: .*$%\x1b[30;43m&\x1b[m%'"

Это не очень хорошее решение, но оно делает свою работу.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...