banner
JackYoung

JackYoung

生活、摄影、写作、代码。
github
bilibili
email

M1上的那些坑

引言#

我手上的 M1 pro 已经使用了快一年了,平时主要用于办公、学习和图像处理,偶尔也会进行一些开发工作,目前我已经成为了一个重度的 Mac 用户。在这里,我将总结一些我遇到的问题,并希望能给那些遇到类似问题的人一些启发。

Brew 环境#

我最开始使用的是 2019 年的 Air,基于 x86 架构,我在那台机器上安装了brew。后来当我收到 M1 时,我迫不及待地进行了数据迁移,结果却遇到了一些问题。很多软件都需要重新下载 Apple 版,或者需要安装Rosetta。最让我困扰的是,无法直接使用brew,找不到原来的安装位置,也无法卸载。后来我在一个知乎的回答中找到了一个好的解决方案,只需要运行一个命令即可,参考这里

Django 连接 MySQL#

最近我也在学习 Django,我倾向于使用 Docker 版本的 MySQL。但是在配置完 Django 的settings.py并安装好mysqlclient后,当我兴冲冲地运行runserver时,遇到了以下错误:

起初,我向 ChatGPT 咨询了这个错误,GPT 告诉我这是版本不匹配的问题,建议我确保 MySQL 的版本和mysqlclient的版本一致。我按照建议进行了操作,都安装了最新版本,但问题依然存在,GPT 也给出了同样的答复。后来我在PyMySQL的 issue 中找到了解决方案,主要问题出在 MySQL 以及mysqlclient的 ARM 版本仍旧存在问题,需要安装 x86 版本的。

  • 首先,需要重新安装 x86 版本的brew
arch -x86_64 zsh
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
  • ARM 版的brew默认安装在/opt/homebrew/bin/brew
  • 安装脚本执行完毕后,会提示手动执行两条命令,以更改当前使用的brew位置
(echo; echo 'eval "$(/usr/local/bin/brew shellenv)"') >> /Users/youngjack/.zprofile
eval "$(/usr/local/bin/brew shellenv)"
  • 现在,使用which brew命令,可以看到已经使用新安装的位于/usr/local/bin/brew的 x86 brew
  • 如果要切换回 ARM 版,只需将手动执行命令中的brew位置改回 ARM 版本的位置即可。
  • 注意:使用 x86 brew 的前提是已经安装了 Rosetta
  • 然后,在python环境下重新安装mysqlclient,并使用brew重新安装 MySQL
brew install mysql
pip uninstall mysqlclient -y
pip install mysqlclient --no-cache-dir
  • 重新运行 Django,问题解决!

安装软件出现文件损坏无法使用#

如果你遇到了这样的提示,很可能是因为你在使用破解软件(因为我太穷了,买不起正版)。你可以尝试以下命令:

sudo xattr -r -d com.apple.quarantine <app>
sudo codesign --sign - --force --deep <app>

之后,如果在安全设置中有允许软件的选项,点击允许即可。

Pulse Secure#

由于工作需要,我需要使用 Pulse Secure 的 VPN 连接。不过很遗憾,目前还没有找到任何地方可以免费下载 Pulse Secure 客户端,通常都是由公司内部提供。但是大部分公司内部提供的都是 Windows 版本的。目前我能找到的可用的下载链接,希望能珍惜使用,因为不知道这个链接什么时候会失效。

软件推荐#

  • Excalidraw是一款开源的绘图软件,可以模拟手写的笔画,还支持多人协作。建议使用 Chrome 将他们的在线版安装到本地,点击即可使用。
  • RunCat是一个跑在屏幕顶栏的小猫,非常可爱,可以监控系统资源。
載入中......
此文章數據所有權由區塊鏈加密技術和智能合約保障僅歸創作者所有。