问题标签 [boost-log]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
c++ - 为什么我的格式在 boost 日志中不起作用
我boost::log
在这个函数中使用:
然后,给定电话:
输出与预期不符:时间戳、行 ID和严重性为空。
() <>: thread id: 7f58e30e8740 初始化成功
c++ - 针对 Boost.Log 的 g++ 静态链接错误
静态链接到 Boost.Log 时出现链接错误。编译器版本为 g++ 4.8.1。Boost 版本是 1.55.0。我可以毫无问题地进行动态链接(在 make 文件中使用“-DBOOST_LOG_DYN_LINK”),但是当我进行静态链接时,会出现链接错误。这个问题不会在其他 boost 库上发生。我简化了代码以轻松重现此问题:
生成链接错误的构建命令:
但是,如果我明确指定 lib 文件,就不会有问题:
我还尝试添加 -L 选项并得到相同的错误:
这是错误日志:
c++ - Boost.Log 问题
我对 Boost.Log 有一些问题:这是一个片段:
我有以下输出:
似乎格式不起作用......我错了吗?
c++ - Boost-log 链接器错误
我已经从源代码下载并构建了 Boost 1.55。我正在尝试使用 Boost-log。在基本情况下(http://boost-log.sourceforge.net/libs/log/doc/html)/log/tutorial.html#log.tutorial.trivial它工作正常没有任何问题,但是当我尝试使用一些更高级的功能(像这样 - http://boost-log.sourceforge.net/libs/log/example/doc/tutorial_fmt_stream.cpp)我收到这个错误:
main.obj:错误 LNK2019:未解析的外部符号“void __cdecl boost::filesystem::path_traits::convert(char const *,char const *,class std::basic_string,class std::allocator> &,class std:: codecvt const &)" (?convert@path_traits@filesystem@boost@@YAXPBD0AAV?$basic_string@GU?$char_traits@G@std@@V?$allocator@G@2@@std@@ABV?$codecvt@GDH @5@@Z) 在函数“void __cdecl boost::filesystem::path_traits::dispatch,class std::allocator > >(class std::basic_string,class std::allocator > const &,class std:: 中引用) basic_string,class std::allocator > &,class std::codecvt const &)"(??$dispatch@V?$basic_string@GU?$char_traits@G@std@@V?$allocator@G@2@@std@@@path_traits@filesystem@boost@@YAXABV?$basic_string@DU?$ char_traits@D@std@@V?$allocator@D@2@@std@@AAV?$basic_string@GU?$char_traits@G@std@@V?$allocator@G@2@@4@ABV?$编解码器@GDH@4@@Z)
1>main.obj:错误 LNK2019:无法解析的外部符号“void __cdecl boost::log::v2s_mt_nt5::aux::code_convert(unsigned short const *,unsigned int,class std::basic_string,class std::allocator > & ,class std::locale const &)" (?code_convert@aux@v2s_mt_nt5@log@boost@@YAXPBGIAAV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@ @ABVlocale@6@@Z) 在函数“private: void __thiscall boost::log::v2s_mt_nt5::basic_formatting_ostream,class std::allocator> ::aligned_write(unsigned short const *,__int64)”中引用 (??$aligned_write @G@?$basic_formatting_ostream@DU?$char_traits@D@std@@V?$allocator@D@2@@v2s_mt_nt5@log@boost@@AAEXPBG_J@Z)
1>main.obj:错误 LNK2019:未解析的外部符号“公共:静态类 std::codecvt const & __cdecl boost::filesystem::path::codecvt(void)”(?codecvt@path@filesystem@boost@@SAABV ?$codecvt@GDH@std@@XZ) 在函数 "public: __thiscall boost::filesystem::path::path(char const (&)[14],void *)" (??$?0$$ BY0O@$$CBD@path@filesystem@boost@@QAE@AAY0O@$$CBDPAX@Z)
所以基本上它在 .lib 文件中找不到函数 convert(...)、code_convert(...) 和 codecvt(...) 。
我已经尝试将所有发布库(构建 boost 时生成的 .lib 文件)添加到“其他库”中,通常我认为 Visual Studio 可以找到所有库,但在库中找不到这些函数。任何想法我该如何解决这个问题?
我已经使用 Visual Studio 2010 (msvc10.0)、32 位、发布和调试从源代码构建了 Boost 1.55。我正在使用 Windows 7 x64。
c++ - 链接到共享库时,Boost Log 无法正常工作
我尝试这样做:在使用 Boost::Log 的 Windows (*.dll) 上创建 1 个共享库 (我想将 Boost::Log 静态链接到该库,因为我希望所有内容都只打包在 1 个 DLL 文件中)但是不成功。
我的项目有 4 个文件,如下所示:
我的CMakeLists.txt:(还有另一个 CMakeLists.txt 可以找到 Boost 库find_package(Boost 1.54.0 REQUIRED thread log log_setup filesystem date_time system)
)
我的mylog.cpp:
和mylog.h:
我的main.cpp:
当我将库mylog编译为静态库(没有 SHARED 关键字)并运行程序testlog时,日志消息保存在文件testlog.log中,并且没有任何内容打印到屏幕上,如代码所述:
但是如果我把它编译成一个 DLL共享库(使用 SHARED 关键字),编译成功但结果却不如预期。没有创建日志文件,消息以不同的格式显示在屏幕上。看起来函数initLog没有运行:
请帮助我。谢谢。
P/S:我也尝试过为日志创建自定义接收器,而不是使用 Boost::Log::Trivial 但结果是一样的。Boost 1.54.0 和 1.55.0 都经过测试。
c++ - 如何使用 BOOST_LOG_TRIVIAL 宏将任何内容记录到 stdout / stderr 和文件
如何使用 BOOST_LOG_TRIVIAL 宏将任何内容记录到 stdout / stderr 和文件?
如果我做
它不会将任何内容记录到标准输出/标准错误,只有文件。
boost-log - 是否可以从 boost::log::record_view 检索记录的消息作为字符串?
说明它封装了日志消息字符串的文档。record_view
我想在consume
自定义子类的函数上下文中检索它basic_string_backend
。
有可能吗,还是我必须从中派生basic_formatted_sink_backend
?
c++ - Boost.Log 同时到文件和标准输出?
我已经boost::log
成功地登录到标准输出(使用TRIVIAL
宏)或登录到文件(基本上按照教程中的步骤)。
我们如何配置同时记录到文件和标准输出?
这是我们设置中的一个常见用例,当我们想要同时拥有一个日志文件以及所有输出到控制台上的日志时。
任何输入表示赞赏!
c++ - boost.log breaking when Xcode precompiled header used
I've got a pretty minimal sample project for boost.log running on Xcode 5, which goes like this:
Now everything runs fine with a command line project.
However as soon as I use the snipped in a real-world project with the default Xcode precompiled header file I'm getting compiler errors in boost/type_traits/detail/has_binary_operator.hpp
and boost/lexical_cast.hpp
.
Precompiled header test_prefix.pch
:
Already wasted hours fiddling with compiler settings and project configuration in Xcode so any feedback is appreciated!
c++ - 获取 boost.log 记录器的严重性..?
假设我有一个简单的 boost.logseverity_logger
记录器设置如下:
如何以编程方式检查严重性?
即类似logger.getSeverity()
..?
我已经在 StackOverflow 上筛选了文档和其他问题,但找不到什么应该是简单的 API 调用..?