0
0
Fork 0
mirror of https://github.com/mumble-voip/mumble.git synced 2025-02-05 13:29:58 +00:00
mumble-voip_mumble/docs/dev/build-instructions
Davide Beatrici b8357e8a25 FEAT(client): Introduce new logging system based on spdlog
Sinks:

- OutputDebugString() (for debugger on Windows)
- Standard output stream (stdout)
- File
- Developer console (Qt widget)

Improvements compared to our old logging system based on Qt:

- Duplicate messages are skipped if less than 5 seconds have passed. When that happens, an informative message is printed.
- The previous format/pattern is retained, but the log level (e.g. "<W>") is colored based on the severity.
- The log is now written to a file on all platforms, not only Windows and macOS.
- When the log file's size reaches 5 MiB, the sink renames it and creates a new one. Up to 4 files are kept:
    Console.txt   -> Console.1.txt
    Console.1.txt -> Console.2.txt
    Console.2.txt -> Console.3.txt
    Console.3.txt -> <delete>
- We can eventually create multiple loggers, ideally one for each facility (Audio, ServerHandler, etc.).
  That would allow us to quickly filter log messages and know right away which subsystem is responsible for them.
- Modern C++ string formatting. This of course only applies to the new functions such as log::debug(), not qDebug().

Only one "feature" is not reimplemented: showing a dialog in case of a fatal error, right before exiting the program.
However, that only worked on Windows and macOS using their native API, to avoid depending on a Qt event loop.
2025-01-21 02:55:19 +01:00
..
build_installer.md DOCS: Mention BUILD_NUMBER for building installer 2021-05-30 16:52:25 +02:00
build_linux.md DOCS(build_linux): Add missing B-Ds to Debian instructions 2024-12-03 18:06:07 +01:00
build_macos.md DOCS: Added info about Poco dependency 2021-05-14 18:24:54 +02:00
build_static.md DOCS(vcpkg): Refer to our own vcpkg fork 2024-10-01 22:36:05 +02:00
build_windows.md DOCS: Added instructions to install Visual Studio 2020-11-01 08:20:00 +01:00
cmake_options.md FEAT(client): Introduce new logging system based on spdlog 2025-01-21 02:55:19 +01:00
common_build_errors.md DOCS: Add FindPythonInterpreter error to common build errors 2022-01-24 08:23:17 +01:00
faq.md DOCS: Mention unity builds 2021-03-06 18:57:22 +01:00
find_build_number.md DOCS: Extend build number docs 2022-01-09 19:54:49 +01:00
ide_integration.md DOCS: Fix vcpkg paths in build documentation 2021-01-14 19:57:06 +01:00
README.md DOCS: Mention differences in documentation across branches 2024-12-22 17:57:32 +00:00
setup_visual_studio.md DOCS: Added instructions to install Visual Studio 2020-11-01 08:20:00 +01:00

Build Mumble

This documentation is version-specific. The current master branch contains the unstable code for a future release of Mumble. If you want to build an already released stable version of Mumble, use the respective branch.

A fundamental dependency for building Mumble is git, so make sure you have it installed. If you are new to git, make sure to checkout this guide on git's basics in order to be able to follow the given instructions.

Furthermore Mumble requires a Cpp17-conform compiler.

The first step in building Mumble is to clone this repository and all the submodules via git clone --depth 1 --recursive https://github.com/mumble-voip/mumble.git.

Tip: You can also build a specific version or commit of Mumble.

In order to actually build Mumble, you can follow one of the following instruction sets:

Furthermore you might find these helpful as well: