boost.log チュートリアルに基づいて、非常に単純なテスト プログラムを作成しました。
#include <boost/log/trivial.hpp>
#define LOG_TRACE BOOST_LOG_TRIVIAL(trace)
#define LOG_DEBUG BOOST_LOG_TRIVIAL(debug)
#define LOG_INFO BOOST_LOG_TRIVIAL(info)
#define LOG_WARN BOOST_LOG_TRIVIAL(warning)
#define LOG_ERR BOOST_LOG_TRIVIAL(error)
#define LOG_FATAL BOOST_LOG_TRIVIAL(fatal)
int
main(int argc,
const char *argv[])
{
LOG_TRACE << "A trace severity message";
LOG_DEBUG << "A debug severity message";
LOG_INFO << "An informational severity message";
LOG_WARN << "A warning severity message";
LOG_ERR << "An error severity message";
LOG_FATAL << "A fatal severity message";
return 0;
}
これを valgrind で実行すると、7 つの損失レコードが生成されます。これは、boost.log を使用したより複雑なプログラムで見られる結果と一致しています。これらのリークを排除する方法を知っている人はいますか、それとも単に抑制する必要がありますか?