经过多次尝试,目前适合的sagemath版本为sage-9.1-OSX_10.11.6-x86_64.app.dmg
下载后创建shell软链接
1 | sudo ln -s /Applications/SageMath-9.1.app/Contents/Resources/sage/sage /usr/local/bin/sage |
安装crypto库
由于是python3版本,要安装pycryptodome
由于sage9的python没有ssl模块,不能顺利安装
查询了解决方法后,需下载fix_mac_sage9.tar.gz进行修复
下载压缩包后进行解压
然后fix_mac_sage9
文件夹外执行下列命令
1 | sage -python -m fix_mac_sage9.fix |
完成patch后下载pycryptodome
建议使用代理进行下载,方法如下:
假定已经给电脑部署了 HTTPS 以及 HTTP 代理,也有如何给终端设置全局代理来让 brew 翻墙更新,但 pip 不吃这一套,我们这次就来单独给 pip 设置翻墙。
pip pip3 有个选项,叫做
1 | --proxy <proxy> Specify a proxy in the form [user:passwd@]proxy.server:port. |
我们直接用这个命令就好了,不过这个命令需要每次在你下载包时附加,比如这样:
1 | pip3 --proxy 127.0.0.1:6152 install snowlp |
这太麻烦了,编辑 ~/.bashrc 文件,或者如果你使用了zsh,那么就是 ~/.zshrc ,在文末添加 alias pip3=“pip3 --proxy 127.0.0.1:6152” 这样,下次打开终端后就不用每次都输入这么长的代理选项了,记得把端口改为你自己的端口。
还有就是 pip 只支持 Https Http 代理,Socks 是不行的,为此,需安装pysocks模块
1 | pip install pysocks |
因此,我们可以
1 | sage -pip install pysocks |
瞬间安装好_