Skip to content

How to build manimgl from source on macOS

Manim is an engine for precise programmatic animations, designed for creating explanatory math videos.

Terminal window
cd ~/projects
git clone https://github.com/3b1b/manim.git
cd manim
Terminal window
conda create -n manim-build-from-source python=3.10
conda activate manim-build-from-source
Terminal window
pip install mapbox-earcut
Terminal window
brew install ffmpeg
Terminal window
brew install mactex

Type latex --version in the terminal.

Terminal window
latex --version
# Output
pdfTeX 3.141592653-2.6-1.40.26 (TeX Live 2024)
kpathsea version 6.4.0
Copyright 2024 Han The Thanh (pdfTeX) et al.
There is NO warranty. Redistribution of this software is
covered by the terms of both the pdfTeX copyright and
the Lesser GNU General Public License.
For more information about these matters, see the file
named COPYING and the pdfTeX source.
Primary author of pdfTeX: Han The Thanh (pdfTeX) et al.
Compiled with libpng 1.6.43; using libpng 1.6.43
Compiled with zlib 1.3.1; using zlib 1.3.1
Compiled with xpdf version 4.04

If the output is as above, then congratulations, mactex has been installed successfully. You can proceed to next step.

Otherwise, please continue. We need to fix this. I'm not sure why, but sometimes, after brew install mactex finishes, it just downloads a package to your disk. You still need to install it manually.

Terminal window
brew info mactex
# Output
brew info mactex
==> mactex: 2024.0312
https://www.tug.org/mactex/
Installed
/opt/homebrew/Caskroom/mactex/2024.0312 (5.6GB)
From: https://github.com/Homebrew/homebrew-cask/blob/HEAD/Casks/m/mactex.rb
==> Name
MacTeX
==> Description
Full TeX Live distribution with GUI applications
==> Dependencies
ghostscript
==> Artifacts
mactex-20240312.pkg (Pkg)
==> Caveats
You must restart your terminal window for the installation of MacTeX CLI
tools to take effect.
Alternatively, Bash and Zsh users can run the command:
eval "$(/usr/libexec/path_helper)"
==> Analytics
install: 3,166 (30 days), 7,794 (90 days), 30,329 (365 days)

Copy the highlighted path and open it in the terminal.

Terminal window
open /opt/homebrew/Caskroom/mactex/2024.031

You will see a file named mactex-<date>.pkg

tree /opt/homebrew/Caskroom/mactex/2024.0312
/opt/homebrew/Caskroom/mactex/2024.0312
└── mactex-20240312.pkg
1 directory, 1 file

Open this file and install it manually.

After the installation is complete, retry Verify mactex installation, now mactex should work.

Terminal window
pip install -e ./manim
Terminal window
which manimgl # output: /opt/anaconda3/envs/manim-build-from-source/bin/manimgl
Terminal window
cd ~/projects/manim
manimgl example_scenes.py TexTransformExample

You should be able to see the animation below.

Congratulations, you have completed all the steps.

If you otherwise encounter problems with installation and use, you can create an Issue at here.

Look through the example scenes to see examples of the library's syntax, animation types and object types.

In the 3b1b/videos repo, you can see all the code for 3blue1brown videos.