解决M2苹果芯片Mac无法安装python=3.7的虚拟环境
问题描述
conda无法安装python=3.7的虚拟环境:
conda create -n py37 python=3.7
出现错误
(base) ➜ AzurLaneAutoScript git:(master) conda create -n alas python==3.7.6 -y
Collecting package metadata (current_repodata.json): done
Solving environment: failed with repodata from current_repodata.json, will retry with next repodata source.
Collecting package metadata (repodata.json): done
Solving environment: failedPackagesNotFoundError: The following packages are not available from current channels:- python==3.7.6Current channels:- https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/osx-arm64- https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/noarch- https://repo.anaconda.com/pkgs/main/osx-arm64- https://repo.anaconda.com/pkgs/main/noarch- https://repo.anaconda.com/pkgs/r/osx-arm64- https://repo.anaconda.com/pkgs/r/noarchTo search for alternate channels that may provide the conda package you're
looking for, navigate tohttps://anaconda.organd use the search bar at the top of the page.
查看channel中可安装python的版本
(base) ➜ AzurLaneAutoScript git:(master) conda search --full --name python
Loading channels: done
# Name Version Build Channel
python 3.8.11 hbdb9e5c_5 pkgs/main
python 3.8.13 hbdb9e5c_0 pkgs/main
python 3.8.13 hbdb9e5c_1 pkgs/main
python 3.8.15 h266c4f5_0 pkgs/main
python 3.8.15 hc0d8a6c_2 pkgs/main
python 3.9.6 hc70090a_5 pkgs/main
python 3.9.7 hc70090a_1 pkgs/main
python 3.9.11 hbdb9e5c_1 pkgs/main
python 3.9.11 hbdb9e5c_2 pkgs/main
python 3.9.12 hbdb9e5c_0 pkgs/main
python 3.9.12 hbdb9e5c_1 pkgs/main
python 3.9.13 hbdb9e5c_1 pkgs/main
python 3.9.13 hbdb9e5c_2 pkgs/main
python 3.9.15 hbdb9e5c_0 pkgs/main
python 3.9.15 hc0d8a6c_2 pkgs/main
python 3.10.0 hbdb9e5c_1 pkgs/main
python 3.10.0 hbdb9e5c_2 pkgs/main
python 3.10.0 hbdb9e5c_3 pkgs/main
python 3.10.0 hbdb9e5c_5 pkgs/main
python 3.10.3 hbdb9e5c_5 pkgs/main
python 3.10.4 hbdb9e5c_0 pkgs/main
python 3.10.6 hbdb9e5c_0 pkgs/main
python 3.10.6 hbdb9e5c_1 pkgs/main
python 3.10.8 hbdb9e5c_0 pkgs/main
python 3.10.8 hc0d8a6c_1 pkgs/main
发现channel中最低版本为3.8.11
问题原因
根据Stackoverflow上面的问题:https://stackoverflow.com/questions/70205633/cannot-install-python-3-7-on-osx-arm64
以及CSDN问答:https://ask.csdn.net/questions/7631935
原因应该是(机翻):
当Apple Silicon投放市场时,Python 3.8已经发布了大约一年的时间,因此用于osx-arm64的Python 3.7构建从来不是Conda Forge常规构建矩阵的一部分。
在Apple Silicon系统上使用3.7的直接替代方法是使用Rosetta模拟x86_64,或者使用容器系统,例如Docker。
长期来看,您可以尝试请求python-feedstock包含osx-arm64的3.7版本。然而,从技术上讲,3.7.12(2021年9月)是最终的特性版本,现在已经进入了仅维护阶段(参见PEP 537)。此外,其他构建特定于python版本的变体的包不会为osx-arm64构建,因此即使有python=3.7,这些包也不会在那里(至少不会通过Conda)。基本上,我不认为有人会接受这个。
解决办法
用罗赛塔转换成X86架构来运行这个。
## 创建一个空的环境
conda create -n py37## 启动该环境
conda activate py37## 使用x86_64 architecture channel(s)
conda config --env --set subdir osx-64## 安装python3.7之类的操作 install python, numpy, etc. (add more packages here...)
conda install python=3.7
实例
(base) ➜ AzurLaneAutoScript git:(master) conda create -n alas
Collecting package metadata (current_repodata.json): done
Solving environment: done==> WARNING: A newer version of conda exists. <==current version: 22.9.0latest version: 22.11.0Please update conda by running$ conda update -n base -c defaults conda## Package Plan ##environment location: /Users/yuki/opt/anaconda3/envs/alasProceed ([y]/n)? yPreparing transaction: done
Verifying transaction: done
Executing transaction: done
#
# To activate this environment, use
#
# $ conda activate alas
#
# To deactivate an active environment, use
#
# $ conda deactivateRetrieving notices: ...working... done
(base) ➜ AzurLaneAutoScript git:(master) conda activas alasCommandNotFoundError: No command 'conda activas'.
Did you mean 'conda activate'?(base) ➜ AzurLaneAutoScript git:(master) conda activate alas
(alas) ➜ AzurLaneAutoScript git:(master) conda config --env --set subdir osx-64
(alas) ➜ AzurLaneAutoScript git:(master) conda install python=3.7.6
Collecting package metadata (current_repodata.json): done
Solving environment: failed with initial frozen solve. Retrying with flexible solve.
Collecting package metadata (repodata.json): done
Solving environment: done==> WARNING: A newer version of conda exists. <==current version: 22.9.0latest version: 22.11.0Please update conda by running$ conda update -n base -c defaults conda## Package Plan ##environment location: /Users/yuki/opt/anaconda3/envs/alasadded / updated specs:- python=3.7.6The following packages will be downloaded:package | build---------------------------|-----------------ca-certificates-2022.10.11 | hecd8cb5_0 125 KB defaultscertifi-2022.9.24 | py37hecd8cb5_0 155 KB defaultslibcxx-14.0.6 | h9765a3e_0 968 KB defaultslibedit-3.1.20210910 | hca72f7f_0 139 KB defaultslibffi-3.2.1 | 1 37 KB https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/freencurses-6.3 | hca72f7f_3 857 KB defaultsopenssl-1.1.1s | hca72f7f_0 2.8 MB defaultspip-22.2.2 | py37hecd8cb5_0 2.3 MB defaultspython-3.7.6 | h359304d_2 19.8 MB defaultsreadline-7.0 | h1de35cc_5 316 KB defaultssetuptools-65.5.0 | py37hecd8cb5_0 1.1 MB defaultssqlite-3.33.0 | hffcf06c_0 1.3 MB defaultstk-8.6.11 | h7bc2e8c_0 3.0 MB defaultsxz-5.2.8 | h6c40b1e_0 262 KB defaultszlib-1.2.11 | 0 98 KB https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free------------------------------------------------------------Total: 33.2 MBThe following NEW packages will be INSTALLED:ca-certificates pkgs/main/osx-64::ca-certificates-2022.10.11-hecd8cb5_0 Nonecertifi pkgs/main/osx-64::certifi-2022.9.24-py37hecd8cb5_0 Nonelibcxx pkgs/main/osx-64::libcxx-14.0.6-h9765a3e_0 Nonelibedit pkgs/main/osx-64::libedit-3.1.20210910-hca72f7f_0 Nonelibffi anaconda/pkgs/free/osx-64::libffi-3.2.1-1 Nonencurses pkgs/main/osx-64::ncurses-6.3-hca72f7f_3 Noneopenssl pkgs/main/osx-64::openssl-1.1.1s-hca72f7f_0 Nonepip pkgs/main/osx-64::pip-22.2.2-py37hecd8cb5_0 Nonepython pkgs/main/osx-64::python-3.7.6-h359304d_2 Nonereadline pkgs/main/osx-64::readline-7.0-h1de35cc_5 Nonesetuptools pkgs/main/osx-64::setuptools-65.5.0-py37hecd8cb5_0 Nonesqlite pkgs/main/osx-64::sqlite-3.33.0-hffcf06c_0 Nonetk pkgs/main/osx-64::tk-8.6.11-h7bc2e8c_0 Nonewheel pkgs/main/noarch::wheel-0.37.1-pyhd3eb1b0_0 Nonexz pkgs/main/osx-64::xz-5.2.8-h6c40b1e_0 Nonezlib anaconda/pkgs/free/osx-64::zlib-1.2.11-0 NoneProceed ([y]/n)? yDownloading and Extracting Packages
libedit-3.1.20210910 | 139 KB | ############################################################################################################## | 100%
xz-5.2.8 | 262 KB | ############################################################################################################## | 100%
readline-7.0 | 316 KB | ############################################################################################################## | 100%
certifi-2022.9.24 | 155 KB | ############################################################################################################## | 100%
python-3.7.6 | 19.8 MB | ############################################################################################################## | 100%
ca-certificates-2022 | 125 KB | ############################################################################################################## | 100%
tk-8.6.11 | 3.0 MB | ############################################################################################################## | 100%
libffi-3.2.1 | 37 KB | ############################################################################################################## | 100%
sqlite-3.33.0 | 1.3 MB | ############################################################################################################## | 100%
zlib-1.2.11 | 98 KB | ############################################################################################################## | 100%
pip-22.2.2 | 2.3 MB | ############################################################################################################## | 100%
libcxx-14.0.6 | 968 KB | ############################################################################################################## | 100%
ncurses-6.3 | 857 KB | ############################################################################################################## | 100%
setuptools-65.5.0 | 1.1 MB | ############################################################################################################## | 100%
openssl-1.1.1s | 2.8 MB | ############################################################################################################## | 100%
Preparing transaction: done
Verifying transaction: done
Executing transaction: done
Retrieving notices: ...working... done
相关文章:
解决M2苹果芯片Mac无法安装python=3.7的虚拟环境
问题描述 conda无法安装python3.7的虚拟环境: conda create -n py37 python3.7出现错误 (base) ➜ AzurLaneAutoScript git:(master) conda create -n alas python3.7.6 -y Collecting package metadata (current_repodata.json): done Solving environment: fa…...

Sound/播放提示音, Haptics/触觉反馈, LocalNotification/本地通知 的使用
1. Sound 播放提示音 1.1 音频文件: tada.mp3, badum.mp3 1.2 文件位置截图: 1.3 实现 import AVKit/// 音频管理器 class SoundManager{// 单例对象 Singletonstatic let instance SoundManager()// 音频播放var player: AVAudioPlayer?enum SoundOption: Stri…...

Oracle实现主键字段自增
Oracle实现主键自增有4种方式: Identity Columns新特性自增(Oracle版本≥12c)创建自增序列,创建表时,给主键字段默认使用自增序列创建自增序列,使用触发器使主键自增创建自增序列,插入语句&…...

【C++数据结构】二叉树搜索树【完整版】
目录 一、二叉搜索树的定义 二、二叉搜索树的实现: 1、树节点的创建--BSTreeNode 2、二叉搜索树的基本框架--BSTree 3、插入节点--Insert 4、中序遍历--InOrder 5、 查找--Find 6、 删除--erase 完整代码: 三、二叉搜索树的应用 1、key的模型 &a…...

TouchGFX之字体缓存
使用二进制字体需要将整个字体加载到存储器。 在某些情况下,如果字体很大,如大字号中文字体,则这样做可能不可取。 字体缓存使应用能够从外部存储器只能加载显示字符串所需的字母。 这意味着整个字体无需保存到在可寻址闪存或RAM上ÿ…...

windows系统关闭软件开机自启的常用两种方法
win10中安装软件时经常会默认开机自启动,本文主要介绍两种关闭软件开机自启动方法。 方法1 通过任务管理器设置 1.在任务管理器中禁用开机自启动:打开任务管理器,右键已启动的软件,选择禁用。 方法2 通过windows服务控制开机自启…...

巧用@Conditional注解根据配置文件注入不同的bean对象
项目中使用了mq,kafka两种消息队列进行发送数据,为了避免硬编码,在项目中通过不同的配置文件自动识别具体消息队列策略。这里整理两种实施方案,仅供参考! 方案一:创建一个工具类,然后根据配置文…...

论文笔记(整理):轨迹相似度顶会论文中使用的数据集
0 汇总 数据类型数据名称数据处理出租车数据波尔图 原始数据:2013年7月到2014年6月,170万条数据 ICDE 2023 Contrastive Trajectory Similarity Learning with Dual-Feature Attention 过滤位于城市(或国家)区域之外的轨迹 过…...
Python实现单例模式
使用函数装饰器 def singleton(cls):_instance {}def inner():if cls not in _instance:_instance[cls] cls()return _instance[cls]return innersingleton class Demo(object):def __init__(self):passdef test():b1 Demo()b2 Demo()print(b1, b2)使用类装饰器 class si…...
spark相关网站
Spark的五种JOIN策略解析 https://www.cnblogs.com/jmx-bigdata/p/14021183.html 万字详解整个数据仓库建设体系(好文值得收藏) https://mp.weixin.qq.com/s?__bizMzg2MzU2MDYzOA&mid2247484692&idx1&snf624672e62ba6cd4cc69bdb6db28756a&…...

ThreeJS-3D教学四-光源
three模拟的真实3D环境,一个非常炫酷的功能便是对光源的操控,之前教学一中已经简单的描述了多种光源,这次咱们就详细的讲下一些最常见的光源: AmbientLight 该灯光在全局范围内平等地照亮场景中的所有对象。 该灯光不能用于投射阴…...

Linux 回收内存到底怎么计算anon/file回收比例,只是swappiness这么简单?
概述 Linux内核为了区分冷热内存,将page以链表的形式保存,主要分为5个链表,除去evictable,我们主要关注另外四个链表:active file/inactive file,active anon和inactive anon链表,可以看到这主要分为两类,file和anon page,内存紧张的时候,内核开始从inactive tail定…...

软件测试中的测试工具和自动化测试
1. 测试工具 测试工具也分为不同人员使用的 开发人员:测试框架,编写测试用例;各类线上dump分析工具如windgb;开发时的集成IDE工具如Visual Studio,idea等等 面向不同测试需求的测试工具 软件测试是软件开发生命周期…...

个人博客系统测试报告
个人博客系统测试报告 一.项目背景二.项目功能三.测试用例3.1 功能测试3.2 自动化测试(部分测试)3.2.1登陆页面3.2.2博客详情页3.2.3博客编辑页3.2.4个人列表页3.2.5测试结果 3.3 性能测试 一.项目背景 当学习完一项技能后,我们总会习惯通过博…...

高效搜索,提升编程效率
一、搜索效率 1.1魔法上网 网址: 一个很变态但可以让你快速学会计算机的方法…………_哔哩哔哩_bilibili 谷歌镜像: https://search.fuyeor.com/zh-cn/Google 谷歌学术: https://link.zhihu.com/?targethttps%3A//scholar.lanfanshu.cn/…...

Java编程技巧:文件上传、下载、预览
目录 1、上传文件1.1、代码1.2、postman测试截图 2、下载resources目录中的模板文件2.1、项目结构2.2、代码2.3、使用场景 3、预览文件3.1、项目结构3.2、代码3.3、使用场景 1、上传文件 1.1、代码 PostMapping("/uploadFile") public String uploadFile(Multipart…...

【蓝桥杯选拔赛真题63】Scratch云朵降雨 少儿编程scratch图形化编程 蓝桥杯选拔赛真题解析
目录 scratch云朵降雨 一、题目要求 编程实现 二、案例分析 1、角色分析...

【新版】系统架构设计师 - 软件架构的演化与维护
个人总结,仅供参考,欢迎加好友一起讨论 文章目录 架构 - 软件架构的演化与维护考点摘要软件架构演化和定义面向对象软件架构演化对象演化消息演化复合片段演化约束演化 软件架构演化方式静态演化动态演化 软件架构演化原则软件架构演化评估方法大型网站架…...
安卓循环遍历计时器
计时器循环遍历 计时器的使用 我习惯两种方式如下: 第一种使用 handler: 1,初始化 声明 public static final int REGULAR_TIME 1000; //1秒 时间间隔private Handler mUiHandler;private int index0;Runnable runnable new Runnable()…...

Docker-基本了解
Docker-基本了解 一、基本概念1、镜像2、容器 二、执行流程三、体系结构 一、基本概念 Docker是容器化平台,提供应用打包,部署与运行应用的容器化平台,应用程序通过docker engine(Docker 引擎获取可用资源)࿰…...
将对透视变换后的图像使用Otsu进行阈值化,来分离黑色和白色像素。这句话中的Otsu是什么意思?
Otsu 是一种自动阈值化方法,用于将图像分割为前景和背景。它通过最小化图像的类内方差或等价地最大化类间方差来选择最佳阈值。这种方法特别适用于图像的二值化处理,能够自动确定一个阈值,将图像中的像素分为黑色和白色两类。 Otsu 方法的原…...
linux 错误码总结
1,错误码的概念与作用 在Linux系统中,错误码是系统调用或库函数在执行失败时返回的特定数值,用于指示具体的错误类型。这些错误码通过全局变量errno来存储和传递,errno由操作系统维护,保存最近一次发生的错误信息。值得注意的是,errno的值在每次系统调用或函数调用失败时…...

MODBUS TCP转CANopen 技术赋能高效协同作业
在现代工业自动化领域,MODBUS TCP和CANopen两种通讯协议因其稳定性和高效性被广泛应用于各种设备和系统中。而随着科技的不断进步,这两种通讯协议也正在被逐步融合,形成了一种新型的通讯方式——开疆智能MODBUS TCP转CANopen网关KJ-TCPC-CANP…...

如何将联系人从 iPhone 转移到 Android
从 iPhone 换到 Android 手机时,你可能需要保留重要的数据,例如通讯录。好在,将通讯录从 iPhone 转移到 Android 手机非常简单,你可以从本文中学习 6 种可靠的方法,确保随时保持连接,不错过任何信息。 第 1…...
css的定位(position)详解:相对定位 绝对定位 固定定位
在 CSS 中,元素的定位通过 position 属性控制,共有 5 种定位模式:static(静态定位)、relative(相对定位)、absolute(绝对定位)、fixed(固定定位)和…...

mysql已经安装,但是通过rpm -q 没有找mysql相关的已安装包
文章目录 现象:mysql已经安装,但是通过rpm -q 没有找mysql相关的已安装包遇到 rpm 命令找不到已经安装的 MySQL 包时,可能是因为以下几个原因:1.MySQL 不是通过 RPM 包安装的2.RPM 数据库损坏3.使用了不同的包名或路径4.使用其他包…...
在web-view 加载的本地及远程HTML中调用uniapp的API及网页和vue页面是如何通讯的?
uni-app 中 Web-view 与 Vue 页面的通讯机制详解 一、Web-view 简介 Web-view 是 uni-app 提供的一个重要组件,用于在原生应用中加载 HTML 页面: 支持加载本地 HTML 文件支持加载远程 HTML 页面实现 Web 与原生的双向通讯可用于嵌入第三方网页或 H5 应…...
动态 Web 开发技术入门篇
一、HTTP 协议核心 1.1 HTTP 基础 协议全称 :HyperText Transfer Protocol(超文本传输协议) 默认端口 :HTTP 使用 80 端口,HTTPS 使用 443 端口。 请求方法 : GET :用于获取资源,…...
WebRTC从入门到实践 - 零基础教程
WebRTC从入门到实践 - 零基础教程 目录 WebRTC简介 基础概念 工作原理 开发环境搭建 基础实践 三个实战案例 常见问题解答 1. WebRTC简介 1.1 什么是WebRTC? WebRTC(Web Real-Time Communication)是一个支持网页浏览器进行实时语音…...

Linux基础开发工具——vim工具
文章目录 vim工具什么是vimvim的多模式和使用vim的基础模式vim的三种基础模式三种模式的初步了解 常用模式的详细讲解插入模式命令模式模式转化光标的移动文本的编辑 底行模式替换模式视图模式总结 使用vim的小技巧vim的配置(了解) vim工具 本文章仍然是继续讲解Linux系统下的…...