This article needs a technical review. How you can help.

Yasm is a cross-platform assembler. It is used by the Mozilla codebase to generate routines for decoding the WebM video format and JPEG images.

Mozilla currently requires Yasm 1.1.0 or newer.

Obtaining Yasm

Windows

Yasm is provided in MozillaBuild 1.5.1.

Mac

You can build Yasm from source by downloading the package here. You'll need version 1.1.0 or newer.

Yasm is also available through HomeBrew and MacPorts. Install it by running

brew install yasm
# or
sudo port install yasm

If you install using MacPorts, make sure you have version 1.1.0 or newer by running yasm --version.  You can run

sudo port selfupdate && sudo port upgrade yasm

to update to the newest version.

GNU/Linux

Yasm is available through most GNU/Linux distributions' package managers.  However, you'll need to ensure that your package manager provides at least Yasm 1.1.0; older versions may not work properly.

On Fedora (<22)/Redhat systems, run

sudo yum install yasm

On Fedora 22

sudo dnf install yasm

On Ubuntu/Debian systems, run

sudo apt-get install yasm 

If a new enough version isn't available through your package manager, you can either build Yasm from source or disable the modules in Mozilla which rely on Yasm.

Building without Yasm

If for some reason you cannot install Yasm, you'll need to disable the WebM decoder and the optimized JPEG decoder.  Do this by adding the following lines to your mozconfig:

ac_add_options --disable-webm
ac_add_options --disable-libjpeg-turbo

Document Tags and Contributors

 Last updated by: AmarOk1412,