Automatisches Einfügen von Dateiname und Zeilennummer in Protokollanweisungen eines C-Programms
Ich schreibe ein Programm für einen eingebetteten ARM-Prozessor inC. Ich möchte den Quelldateinamen und die Zeilennummer in den Protokollierungsanweisungen sehen.
Da der kompilierte Code keine Kenntnis von Zeilennummern und Quelldateien hat, suche ich nach Möglichkeiten, diese vor / während des Kompilierungsprozesses automatisch einzufügen.
Gibt es Standardwerkzeuge oder Compilerfunktionen, die ich dafür verwenden kann?
Ich benutze GCC.
Zum Beispiel:
Folgendes würde ich in die Quelldatei schreiben:
log("<#filename#> <#linenumber#> : Hello World");
Dies ist, was tatsächlich kompiliert werden würde:
log("Foobar.c 225 : Hello World");