gcc(或其他编译器)通常会生成大量的文本输出,很难看到错误在哪里或忽略警告。我搜索了一些东西,但没有找到一个干净简单的解决方案来对编译器输出进行颜色编码(例如,警告为黄色,错误为红色等)。
gcc(或其他编译器)经常会生成大量文本输出和警告,需要对其进行颜色编码以便更好地查找和解决问题。
gcc(或其他编译器)通常会生成大量的文本输出,很难看到错误在哪里或忽略警告。我搜索了一些东西,但没有找到一个干净简单的解决方案来对编译器输出进行颜色编码(例如,警告为黄色,错误为红色等)。
gcc(或其他编译器)经常会生成大量文本输出和警告,需要对其进行颜色编码以便更好地查找和解决问题。
如果你正在寻找非常简单的替代方案,这里有一个选择:
#!/bin/bash -e
make ${@} 2>&1 | perl -wln -M'Term::ANSIColor' -e '
m/Building|gcc|g++|\bCC\b|\bcc\b/ and print "\e[1;32m", "$_", "\e[0m"
or
m/Error/i and print "\e[1;91m", "$_", "\e[0m"
or
m/Warning/i and print "\e[1;93m", "$_", "\e[0m"
or
m/Linking|\.a\b/ and print "\e[1;36m", "$_", "\e[0m"
or
print; '
只需将您的 make 命名为此脚本的别名,并确保它是可执行的...
apt-get install -y python3-{pip,setuptools,wheel}
,pip3 install -U pip
,最后 pip install outproc
--一切都成功安装。 - zaufi/usr/lib/outproc/bin
或/usr/bin/outproc
,你的网页上提到了我必须使用软链接。因此,我不知道如何测试这个安装。我在/usr/local/bin
中找到了一个带有当前日期的“outproc”(所以我认为它刚刚被安装了),但运行它会出现错误:outproc -m g++ ... File "/usr/local/bin/outproc",第11行,在<module>...sys.exit(main())...
- Carlo WoodFile "/usr/local/lib/python3.5/dist-packages/outproc/cli.py", line 236, in main ... return a.run() ... File "/usr/local/lib/python3.5/dist-packages/outproc/cli.py", line 182, in run ... log.eerror('Pipe mode not implemented') ... File "/usr/local/lib/python3.5/dist-packages/outproc/logger.py", line 33, in eerror ... print(' \x1b[0;31;1m*\x1b[0m {}'.format(msg), file=sys.stderr) ... NameError: name 'sys' is not defined
- Carlo Wood到目前为止,至少有3个答案提到了colorgcc,但是它们都没有解释如何安装它!(而且这并不明显)。因此,以下是在Ubuntu中安装最新版本的方法!
sudo cp ~/Downloads/Install_Files/colorgcc-master/colorgcc.pl /usr/bin/colorgcc
sudo chmod +x /usr/bin/colorgcc
mkdir ~/bin
gcc
或g++
时,它会自动调用colorgcc
:
ln -s /usr/bin/colorgcc ~/bin/g++
ln -s /usr/bin/colorgcc ~/bin/gcc
现在我调用g++ -Wall -std=c++11 time_until_overflow_2.cpp -o time_until_overflow_2
,以下是一个示例g++
输出:
*注意:只有在“〜/bin”处创建这些符号链接才能正常工作,前提是“〜/bin”在实际的gcc
和g ++
可执行文件所在的文件夹之前。要确保在路径中有“〜/bin”,您可以使用以下命令查看PATH变量内容:echo $PATH
。如果您在路径开头看不到“/home/YOUR_USERNAME/bin”,请使用以下命令添加它:export PATH=~/bin:$PATH
。
参考资料:
了解更多信息并了解我最初学习这些步骤的地方,请参见此处:https://imranfanaswala.wordpress.com/2009/02/02/setting-up-colorgcc/。感谢Imran Fanaswala!
〜GS
虽然GCC 4.9有-fdiagnostics-color选项可以启用终端的彩色输出,但我创建了一个名为'crror'的小工具来获得带颜色的编译器输出。
它还支持make
的输出。如果有人需要,我可以添加其他工具的颜色模式。
你可以使用GilCC,这是一个Ruby工具,可以实时将GCC输出转换为彩色。现在你有两个选择:Perl脚本(colorGCC)或GilCC,如果你已经在使用Ruby,你会喜欢GilCC。
GilCC独有的功能是它有警告和错误计数器,并且显示编译时间,在你尝试改进东西时非常方便。因为它是用Ruby编写的,所以它是跨平台的。它很灵活,你可以添加更多的gems来自定义它。
下载页面链接在这里。