ロギングにLog4Cxxを使用していますが、ログトレース(ファイル名と行番号)がどこにあるかを確認するために%lディレクティブを使用したいと思います。私が抱えている問題は、コンパイラにフルパス名を提供するCMakeも使用していることです。これにより、ログ列が整列されなくなり、log4cxxがその情報を決定するために__FILE__プリプロセッサマクロを使用するため、ログ列を読み取ることが困難になります。
誰かが回避策を知っていますか?たとえば、「filename.cpp」のみを取得するか、ネストパラメータを使用してより適切に取得するかを指定したいと思います。たとえば、2つのネストは「module / submodule/filename.cpp」になります。設計上、CMakeはフルパス哲学で動作するようです。したがって、これは、未知のプリプロセッサディレクティブを使用するか、Log4CXXを何らかの方法でだますことで解決できると思います。