mumble/docs/dev/build-instructions
Robert Adam dac3337786
Merge PR #6292: CHANGE(client): Exclude and discourage RNNoise
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
2023-12-31 13:51: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): Update Ubuntu package names 2023-12-29 19:41:37 +01:00
build_macos.md DOCS: Added info about Poco dependency 2021-05-14 18:24:54 +02:00
build_static.md Merge PR #6235: DOCS: Change encoding to UTF-8 & clean up error msg in FAQ 2023-10-11 08:48:56 +02:00
build_windows.md DOCS: Added instructions to install Visual Studio 2020-11-01 08:20:00 +01:00
cmake_options.md CHANGE(client): Exclude and discourage RNNoise 2023-12-30 09:36:13 +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: Updated build instructions to remove duplicated step 2022-01-18 13:01:14 -08:00
setup_visual_studio.md DOCS: Added instructions to install Visual Studio 2020-11-01 08:20:00 +01:00

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: