| Version 9 (modified by raphael.costa, 10 years ago) (diff) |
|---|
Suporte de Log no TerraMA²
- Quais são as macros de compilação necessárias?
- Qual a biblioteca utilizada e por que?
- Como usar o suporte de Log?
- O que adicionar ao CMakeLists.txt de um novo módulo ou aplicativo para utilizar o suporte de Log?
- Fazer um componente Qt que possibilite ver o log? implementar como um sink?
Boost Log
Macros de compilação
| BOOST_LOG_DYN_LINK | Assume que a biblioteca será dinamicamente carregada, ou seja, "dll", "so" | |||
| BOOST_LOG_NO_THREADS | Desabilita o suporte a multithread. É alterada automaticamente quando não é encontrado o suporte a threads | |||
| BOOST_LOG_WITHOUT_CHAR | ||||
| BOOST_LOG_WITHOUT_WCHAR_T | ||||
| BOOST_LOG_NO_QUERY_PERFORMANCE_COUNTER | ||||
| BOOST_LOG_USE_NATIVE_SYSLOG | Afeta em tempo de compilação da biblioteca. Se por alguma razao o suporte a API SysLog? nativa não for detectada, esta macro permite forçar e habilita-la. | BOOST_LOG_WITHOUT_DEFAULT_FACTORIES | ||
| BOOST_LOG_WITHOUT_SETTINGS_PARSERS | ||||
| BOOST_LOG_WITHOUT_DEBUG_OUTPUT | ||||
| BOOST_LOG_WITHOUT_EVENT_LOG | Afeta em tempo de compilação da biblioteca. Se definida, o suporte ao evento de log do Windows não será construído. Defining the macro also makes Message Compiler toolset unnecessary. | |||
| BOOST_LOG_WITHOUT_SYSLOG | Afeta em tempo de compilação da biblioteca. Se definida, o suporte do syslog não será construido | |||
| BOOST_LOG_NO_SHORTHAND_NAMES | ||||
| BOOST_LOG_USE_COMPILER_TLS | Afeta em tempo de compilação da biblioteca. A macro define os parametros estabelecidos do compilador para armazenamento thread local. Isto pode melhorar o desempenho do Boostlog se as limitações são aceitaveis | |||
| BOOST_LOG_USE_STD_REGEX, BOOST_LOG_USE_BOOST_REGEX ou BOOST_LOG_USE_BOOST_XPRESSIVE | ||||
Configuraração do CMakeLists.txt
Procurar pela biblioteca boost log:
find_package(Boost 1.54.0 REQUIRED log log_setup system)
Linkar o novo módulo com a biblioteca boost log:
target_link_libraries(mymodule ${Boost_SYSTEM_LIBRARY}
${Boost_LOG_SETUP_LIBRARY}
${Boost_LOG_LIBRARY})
