
3Blue1Brown数学动画引擎Manim的Windows安装方法
——一视数学
2019.12.11

只要Manim还是基于Python3开发的,预计这个教程将长期有效。
新手请保证自己的所有软件的安装目录和本教程一致!
新手请保证自己的所有软件的安装目录和本教程一致!
新手请保证自己的所有软件的安装目录和本教程一致!
先来讲讲Windows版的安装逻辑:
四加一、manim-master文件夹、python库、CTEX字体支持
Part I 四加一的安装
Manim是基于Python3开发的,安装Python3是最为必要的。
除了python以外,还需要ffmpeg来处理视频,sox来处理音频,latex来处理字体,pycairo来处理图形。
从软件安装层面来说就是四大软件:python,ffmpeg,sox,latex推荐选用miktex这款软件,这四个软件是并行的,无所谓先安装哪一个。而pycairo要等python安装完成后才能继续。
安装32位还是64位的软件?请右键点击我的电脑,属性。自行查看自己的Windows操作系统是32位还是64位的。

本教程将以64位操作系统的电脑为例。
1. 安装python
官网:https://www.python.org/
官网下载页面:https://www.python.org/downloads/windows/
下载python3.7或者python3.8,不久的将来python3.9也将到来。请自行下载安装。安装时一路全部勾选。(注意一定要勾选add python to path)
Python3.7.2 https://www.python.org/downloads/release/python-372/
Python3.8.0 https://www.python.org/downloads/release/python-380/
在页面靠下的地方,看到大大的Files就可以到那下面去选择文件下载了

File Size越大的越完整。下载Windows的executable installer,32位系统下载x86那个文件,64位系统下载x86-64那个文件。
小白请继续往下看详细步骤(以python3.7为例)

自定义安装,并且添加到PATH

全部勾选,NEXT
Customize install location 可以定义你自己想放的存储位置
以安装在C盘为例安装

全部勾选,Install

若方框位置出现管理员字样,请点击授权再关闭。
万一安装失败,重新安装时不要勾选
download debugging symbols
download debugging biniaries
如果还失败,那就不要勾选
install for all users
检验:
Win10搜索框输入cmd会出现“命令提示符”,右键点击,选择“以管理员身份运行”。请一定使用管理员身份运行,否则有些电脑的python库会无法安装,后面的任何使用cmd的操作请都使用管理员身份运行,请都使用管理员身份运行,请都使用管理员身份运行。
到cmd里去输入python --version,看看是否安装成功。

2. 安装ffmpeg
官网:https://www.ffmpeg.org/
官网推荐的下载链接:https://ffmpeg.zeranoe.com/builds/win64/static/
自行下载解压放置到合适的位置,本教程将以摆放在c盘根目录,即C:\为目录来讲解。
将ffmpeg下面的bin文件夹添加到环境变量。
小白请继续往下看详细步骤
在桌面找到此电脑;如果你找不到此电脑,请先双击打开回收站,在下图中的位置也可以找到此电脑。

右键点击此电脑,选“属性”->”高级系统设置“->”环境变量”->双击”PATH”

高级系统设置

环境变量

Path
把FFMPEG.exe的目录新建添加进来,添加的地址应为*****\bin的目录地址。

添加bin的目录地址
如果不知道怎么找到这个地址的话,打开ffmpeg的文件夹并进入到bin的子文件夹下,对着地址栏点一下,复制这个地址即可。

注意刚才弹出的一些框都要点确定,这样添加才会生效。
检验:到cmd里面输入ffmpeg -version看看是否安装成功。
如果没有成功,可以先关掉cmd,再次开启后输入ffmpeg -version看看是否安装成功。
3. 安装latex,推荐使用miktex
如果要从官网下载miktex的话请继续看,如果需要曲线通过protex来安装的话,稍后会讲到。建议选择曲线安装!
建议选择曲线安装!
建议选择曲线安装!
官网下载页面:https://miktex.org/download
很容易就能找到下载:点击All downloads,

再点击Net Installer,32位的就点32-bit那个,64位的点64-bit那个,千万不要点Basic Installer安装,那个安装包不完整,对以后中文字库及其他语言字库的支持不方便。

安装的时候先Download MikTeX,好了之后再Install MikTeX。
如果你不喜欢网络安装,现阶段还有一个方法推荐(不知道将来是否还通用),我个人也是使用这个方法的:
去某高校镜像站下载protext,从里面曲线安装miktex完整安装包,比较大,有好几个G。
下载链接:http://mirror.lzu.edu.cn/CTAN/systems/win32/protext/protext.zip
以我教别人装manim逾100台的经验,安装miktex有一定几率翻车,如果你翻车了,可以有两种选择:
换一台电脑
或者
删除干净后继续尝试
我有一台intel 8700es+魔改z170主板ddr3内存的电脑(珍爱生命,远离魔改)装了n次终于装上了,什么原因我也不清楚,但我另外几台电脑安装都没有碰到问题。
附翻车指南:如果以下操作你都做过了仍然装不上miktex,那么大概率就是翻车了。
可能会有的问题是:安装报错。
安装报错以后要进行unistall,然后还要删除干净之前安装的目录。如果可以的话再重启一次电脑。
安装报错可能有若干几种情况。
a. 有些电脑不能勾选install for all users,那么请勾选Install only for me。

b. 有些电脑安装到某些文件夹下可能会报错,那么换一些合适的文件夹

上图的文件目录可能就会出问题,请修改成下图的文件目录里安装。

检验:到cmd里去输入latex -version,看看是否安装成功。
如果没有成功,可以先关掉cmd,再次开启后输入ffmpeg -version看看是否安装成功。
4. 安装sox
官网:http://sox.sourceforge.net/
下载地址:https://sourceforge.net/projects/sox/files/sox/
Sox只有win32版本,14.4.2
这个装完不需要检验。
5. 安装pycario
cario官网:https://www.cairographics.org/
原谅我并没有在这个官网上找到想要下载的文件。于是,根据3B1B大神Grant的指引找到了,可能也是个高校镜像网站,注意版本号或有更新。
链接:https://www.lfd.uci.edu/~gohlke/pythonlibs/#pycairo
下载好通过cmd安装。
小白请继续往下看详细步骤
先把cp37和cp38的四个文件全部下载了。

先说cp37和cp38的区别,cp37对应python3.7版本,cp38对应python3.8版本,将来一定会有cp39。win32和win_amd64的区别我也就不说了,每个人的电脑有不同,有点麻烦。
新手请仔细阅读下面这段话!
新手请仔细阅读下面这段话!
新手请仔细阅读下面这段话!
把你要安装的那两个文件放到c盘根目录,打开cmd, 输入cd \进入c盘根目录。现在以python3.7对应的pip install pycairo-1.18.2-cp37-cp37m-win32.whl和pip install pycairo-1.18.2-cp37-cp37m-win_amd64.whl为例。注意python3.8的文件名和python3.7的文件名是不同的,明显37的文件名比38的要长,因为37后面有m,38后面没有m,你发现了吗?不要看着教程的文件名复制,去复制你所要安装文件的名字。
打开cmd,
输入cd \
进入c盘根目录,
输入pip install pycairo-1.18.2-cp37-cp37m-win32.whl
开始安装pycairo。

如果顺利的话就直接安装成功了。
如果不成功,那就
输入pip install pycairo-1.18.2-cp37-cp37m-win_amd64.whl
安装pycairo。

应该就成功了。
如果还没有成功的话,退出cmd,用管理员运行cmd再试。
现在你不光完成了pycairo的安装,也清楚了你应该装win32还是win_amd64了。记住,等会我们还会用到。
Part II 下载manim-master
官网:https://github.com/3b1b/manim
直接点击Download Zip即可,注意manim-master更新非常勤快,革命性更新甚至会删除掉一些命令语句,添加新的命令语句。

解压缩后,找个合适的位置摆放manim-master文件夹。当然也可改文件夹名,比如我有的电脑中文件夹名就叫manim,有的叫m,有的叫m-hd等。
本教程以摆放在C:\manim-master为例。
Part III 配置manim所需的python库
四加一和manim文件位置确定后完以后,就要完善python的配置,安装不同的python库。
这里所安装的库又可分为版本通用类库与版本不通用类库。
版本通用类库:现阶段,不论你安装python3.7还是python3.8,都是一样的文件。包括:
argparse,colour,progressbar,pydub,tqdm
pyreadline
版本不通用类库:python3.7的必须安装3.7版本的文件,python3.8的必须安装3.8的文件,将来有python3.9的话就必须安装3.9的文件,以此类推。包括:
numpy,opencv-python,pillow,scipy
pycario也能算,但是我们已经提前安装好了。
库的安装方式:ABC三种,A是官方教程介绍的,B是官方教程的改版,C是up主自己安装的方法,任选一种使用即可。
推荐结合BC使用!
推荐结合BC使用!
推荐结合BC使用!
A. 通过manim文件夹下的requirements.txt来执行网络安装;
打开cmd,输入cd \进入c盘根目录
再输入cd manim-master进入C:\manim-master
如果你这个文件夹叫manim,那么就应该输入cd manim
再输入pip install -r requirements.txt安装manim需要的python库

需要注意的是,网络情况很糟糕的话会经常导致下载超时而报错。
不推荐国内用户通过这种方式安装。
不推荐国内用户通过这种方式安装。
不推荐国内用户通过这种方式安装。
B. 通过cmd命令行来逐个进行网络下载安装;
仔细看一下requirements.txt文件

其实就是把需要下载的库打包一起下载而已。网络下载超时报错的话,自己一个个下载也可以。

就这么一个一个装,哪个下载太慢了一目了然,版本还会安装得更新一些。
超过10m的文件,大概率会超时,所以大文件请参考C方案。
C. 如果一个一个网络安装还是会超时报错,那么也可选择下载这些库到本地来进行安装。
我把这些python库按照下载的文件不同整理了一下:

除了已经安装好的pycairo外,其他全部都可以在官方网站下载到。
官网:https://pypi.org/
搜索python库的名字,逐个下载。
通用库的文件下载完以后是这样的,版本号或会更新:

例如:tqdm

点击Download files

再点击下载,注意核对下载的文件名是否和教程中的文件名类似。
其中pyreadline,需要通过双击安装。
其他的安装方式比pycairo简单,也在cmd安装,不用区分python版本不同,也不用区别win32和win_amd64。
非通用库的文件下载完以后是这样的(以python3.7为例):

建议你win32和win_amd64都下载了,换电脑装起来也方便。这些安装方法和pycairo一模一样。注意使用管理员打开cmd。
无论你通过ABC哪种方法完成了安装后,
在cmd输入pip list检验一下python库的安装情况,注意版本号或有更新:

Part IV 第一个视频的导出
再次用cmd来到manim-master文件夹下。
如果你忘记了怎么进入manim-master文件夹,请接着看。
输入cd \
输入cd manim-master
进入到manim-master文件夹后,
输入python -m manim.py example_scenes.py SquareToCircle -pl

成功!完美!
在刚才的c:\manim-master\media文件夹中会生成video\example_scenes\480p15\的文件夹,其中有个SquareToCircle视频就是我们要的视频。
如果你没有成功,那是因为manim的代码更新了!by 2020.04.08
Played 0 animations
Manim is now running in streaming mode. Stream animations by passing
them to manim.play(), e.g.
>>> c = Circle()
>>> manim.play(ShowCreation(c))
是不是显示了这一段话?这是告诉你可以直接cmd打代码。。。不管他
这样,你试试把带“-”的缩略语都去掉。
遇到刚才的情况,先输入
quit()
然后输入
python manim.py example_scenes.py SquareToCircle

在刚才的c:\manim-master\media文件夹中会生成video\example_scenes\1440p60\的文件夹,其中有个SquareToCircle视频就是我们要的视频。by 2020.04.08
Part V 开启CTEX字体支持
如果刚才在安装latex的时候,下载了miktex的basic-installer进行安装的话,才需要在miktex下面去下载好几个package。
如果刚才选择了miktex的net-installer或者protext曲线安装了完整版miktex的话,直接就可以去开启字体支持了。
找到manim-master文件夹下的manimlib文件夹,在里面有一个叫做constant的py文件。
用编译器打开后,找到TEX_USE_CTEX = False,把他改成TEX_USE_CTEX = True,保存就可以了。
安装就完成了,当然这只是开始。
柏拉图曾经说过:开始是工作最重要的部分。
鲁迅曾说过:素质三连也是。