mirror of
https://github.com/mumble-voip/mumble.git
synced 2025-10-26 11:19:16 +00:00
Due to RNNoise being unmaintained and the library's code being in very poor shape, this commit excludes the RNNoise feature from Mumble by default and discourages its use. The library contains Opus and CELT symbols (probably due to copy&paste of code) that can end up being called from Opus instead of its own versions of these functions. This can lead to completely unforeseen behavior, including crashes. An example of this is as of writing this, enabling RNNoise on macOS leads to a crash of Mumble pretty much as soon as it starts up with an "invalid instruction" error. The reason being that part of RNNoise's implementation of one of Opus's symbols contains a code path that produces an invalid instruction in optimized builds (and a segfault in debug builds) and this code path is taken when Opus (wrongly) uses this function instead of its own. Fixes #6041 |
||
|---|---|---|
| .. | ||
| build_installer.md | ||
| build_linux.md | ||
| build_macos.md | ||
| build_static.md | ||
| build_windows.md | ||
| cmake_options.md | ||
| common_build_errors.md | ||
| faq.md | ||
| find_build_number.md | ||
| ide_integration.md | ||
| README.md | ||
| setup_visual_studio.md | ||
Build Mumble
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 Cpp14-conform compiler.
The first step in building Mumble is to clone this repository via git clone https://github.com/mumble-voip/mumble.git and then going into the cloned
directory and run git submodule update --init --recursive in order to also clone all submodules.
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: