「GIS教程」M1 Mac安装Conda
继续折腾M1的开发环境,今天的主题是在M1的Mac上配置Python开发环境,众所周知的原因,Python这个鬼东西版本多还不兼容,为了在不同的项目使用不同的Python开发环境,诞生了神器:Conda。
之前一直使用的是Anaconda,后来在好友的撺掇下又使用了精简的 Miniconda,这次换上M1之后也Miniconda,结果发现截止发文(2021-12-08),目前市面上Anaconda和Miniconda均不能原生支持M1芯片。其实可以直接装,因为系统会自动转译,但我有点强迫症,还是想装原生的。后来发现了这个:Miniforge。地址:https://github.com/conda-forge/miniforge/#download
安装
很多教程上让下载xxxx.sh
的方法来安装,但我还是推荐使用官网的方法:
curl -L -O https://github.com/conda-forge/miniforge/releases/latest/download/Mambaforge-$(uname)-$(uname -m).sh
bash Mambaforge-$(uname)-$(uname -m).sh
如果系统中没有curl
,可以使用下面的方法
wget https://github.com/conda-forge/miniforge/releases/latest/download/Mambaforge-$(uname)-$(uname -m).sh
bash Mambaforge-$(uname)-$(uname -m).sh
你会发现默认安装的Mambaforge,Mamba多了多线程支持,可以更快速的下载。
切换源(可选,未测试)
国内下载速度有点慢,我们可以换一个国内的源。我不喜欢用国内的源,有这个需求的可以尝试。
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/msys2/
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/conda-forge/
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/
conda config --set show_channel_urls yes
使用x86的包
这种方法安装的Python3.9虽然原生支持M1,但只能安装支持osx-arm64的库,原因是安装时附带的Python 3.9是原生的,不可能链接到x86的库上,要使用并不支持osx-arm64的库。
如果一些库只支持x86,我们需要建立一个转译的环境。
# 新建名为rosetta的虚拟环境,该环境中的Python架构为x86,经过转译运行
CONDA_SUBDIR=osx-64 conda create -n rosetta python
conda activate rosetta
python -c "import platform;print(platform.machine())" # 应输出“x86_64”
# make sure that conda commands in this environment use intel packages
conda env config vars set CONDA_SUBDIR=osx-64
conda deactivate # 需要reactivate该虚拟环境,以使设置生效
conda activate rosetta
echo "CONDA_SUBDIR: $CONDA_SUBDIR" # 应输出“CONDA_SUBDIR: osx-64”
conda install ... # 安装你想用的包
结语
其实M1的 rosetta 已经做的比较优秀了,做开发还是很香的,整体下来也没怎么折腾。
相关阅读
声明
1.本文所分享的所有需要用户下载使用的内容(包括但不限于软件、数据、图片)来自于网络或者麻辣GIS粉丝自行分享,版权归该下载资源的合法拥有者所有,如有侵权请第一时间联系本站删除。
2.下载内容仅限个人学习使用,请切勿用作商用等其他用途,否则后果自负。