Qtをメインに、プログラムやITに関する情報を発信

Qtの戯言

デバッグ

Log4Qtをリリースビルドで使用すると、ファイル名や行番号が取得できないことへの対処法

投稿日:

Log4Qtをリリースモードでビルドし、Log4Qtを使用するプロジェクトも同じくリリースモードでビルドすると、ログは出力されるものの、ファイル名や行番号、関数名などが取得できません。

Log4Qtがログを出力する際、内部でQMessageLogContextというQtのクラスを使用しています。
こいつが、デフォルトではデバッグビルドでのみ各種情報を提供してくれるようになっていることが原因です。

 

対処法

QMessageLogContextクラスの説明にも書かれているとおり、QT_MESSAGELOGCONTEXTを定義すればOK。

DEFINES += QT_MESSAGELOGCONTEXT

 

-デバッグ
-, ,

Copyright© Qtの戯言 , 2020 All Rights Reserved Powered by STINGER.