gcc - programar - nfc tag writer
¿Hay alguna manera fácil de CODIFICAR COLOR las salidas del compilador? (9)
gcc (u otros compiladores) a menudo generan un gran volumen de texto y es muy difícil ver dónde está el error o perder advertencias. He hecho una búsqueda pero no he encontrado una solución simple y clara para codificar por color la salida del compilador (por ejemplo, las advertencias son amarillas, los errores son rojos, etc.)
Cómo instalar y usar colorgcc para colorear el resultado del compilador gcc:
Al menos 3 respuestas aquí mencionan colorgcc , ¡pero NINGUNA DE ELLAS EXPLICA CÓMO INSTALARLA! (Y no es obvio). Entonces, ¡aquí está cómo instalar la última versión en Ubuntu!
- Vaya colorgcc y haga clic en "Clonar o descargar" -> "Descargar Zip". Lo guardé en "~ / Downloads / Install_Files"
- Navega hacia él en tu buscador de archivos y haz clic derecho sobre él y ve a "Extraer aquí". Ahora tengo un directorio llamado "~ / Downloads / Install_Files / colorgcc-master".
- Copie el script "colorgcc.pl" en "/ usr / bin / colorgcc" para "instalarlo" (asegúrese de usar el directorio correcto de acuerdo con el lugar donde lo extrajo arriba):
sudo cp ~/Downloads/Install_Files/colorgcc-master/colorgcc.pl /usr/bin/colorgcc
- Hazlo ejecutable:
sudo chmod +x /usr/bin/colorgcc
- Cree el directorio "~ / bin" si aún no existe:
mkdir ~/bin
- * Haga enlaces simbólicos que apunten a "/ usr / bin / colorgcc" para que cada vez que llame a
gcc
og++
llame automáticamente acolorgcc
:-
ln -s /usr/bin/colorgcc ~/bin/g++
-
ln -s /usr/bin/colorgcc ~/bin/gcc
- (Si alguna vez quiere desinstalar colorgcc por algún motivo simplemente elimine estos enlaces simbólicos "~ / bin / g ++" y "~ / bin / gcc", y el script de Perl: "/ usr / bin / colorgcc" y listo )
-
- ¡Hecho!
Aquí hay un ejemplo de salida de g++
ahora cuando llamo a g++ -Wall -std=c++11 time_until_overflow_2.cpp -o time_until_overflow_2
:
* Nota: hacer estos enlaces simbólicos en "~ / bin" solo funciona si "~ / bin" está en su variable PATH en una ubicación anterior a la carpeta donde se encuentran los ejecutables gcc
y g++
. Para asegurarse de tener "~ / bin" en su ruta, puede ver los contenidos de la variable PATH con: echo $PATH
. Si no ve "/ home / YOUR_USERNAME / bin" al comienzo de su ruta, agréguelo con: export PATH=~/bin:$PATH
.
Referencias
Vea aqui para mas informacion. y por donde originalmente aprendí la mayoría de estos pasos: https://imranfanaswala.wordpress.com/2009/02/02/setting-up-colorgcc/ . Gracias Imran Fanaswala!
~ GS
Aquí hay una alternativa si estás buscando algo muy simple:
#!/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; ''
Simplemente haga alias su marca en este script y asegúrese de que sea ejecutable ...
Aunque GCC 4.9 tiene una opción de color de diagnóstico para habilitar las salidas de color a los terminales, he creado una pequeña herramienta llamada '' crror '' para obtener una salida de compilador coloreada.
También es compatible con los resultados de make
. Puedo agregar patrones de color para otras herramientas si alguien lo requiere.
Debian y Ubuntu le dan el paquete colorgcc
para ese propósito.
Y normalmente ejecuto gcc
(y make
) a través de emacs
con Mx compile
luego los mensajes se colorean.
adenda
GCC 4.9 tiene una función de colorización nativa y GCC 6 , lanzado a fines de abril de 2016 (y probablemente también GCC 5 ), lo habilita de manera predeterminada (cuando stdout es una terminal).
Ok, solo dejaré un aviso sobre mi propia herramienta (basada en python) también :)
Se llama procesador de salida conectable y está diseñado no solo para colorear la salida de un programa en particular. Aquí hay una muestra de salida de GCC antes:
Después:
Ver colorgcc , una secuencia de comandos perl que puede ver la salida de gcc.
puede usar GilCC que es una herramienta de Ruby que convertirá la salida de GCC a color en tiempo real. En este momento tiene dos opciones: Perl script (colorGCC) o GilCC y si ya trabaja con Ruby le gustará GilCC.
Único para GilCC; GilCC tiene contadores de advertencia y errores, y también muestra el tiempo de compilación, muy útil cuando intentas mejorar las cosas. Porque está en Ruby es una plataforma cruzada. Es flexible y puede agregar más gemas para personalizarlo de cualquier forma que desee.
El enlace a la página de descarga está aquí.
Gcc 4.9 parece haber agregado esta característica a través de la -fdiagnostics-color
:
ColorMake coloreará la salida de GCC y Make, resaltando advertencias y errores.