所以我通过 arm64 自制软件安装了 tmux。
我最初为 arm64 手动编译了 alacritty(我最喜欢的终端模拟器),因此它在 arm64 模式下运行。 uname -a
确认我们在 arm64。
Darwin ndo-mbp.local 20.1.0 Darwin Kernel Version 20.1.0: Sat Oct 31 00:07:10 PDT 2020; root:xnu-7195.50.7~2/RELEASE_ARM64_T8101 arm64
然后我安装了 homebrew,它缓慢但肯定地为大多数流行的应用程序提供了 arm64 瓶,包括 tmux
({{3}})。所以我从 arm64 shell 安装了它,它编译成功。
如果我运行 file $(which tmux)
我得到:
/opt/homebrew/bin/tmux: Mach-O 64-bit executable arm64
但是,如果我在 arm64 alacritty 中启动 tmux
二进制文件,我似乎会进入 x86_64 模式。从我得到的 tmux 窗口内运行 uname -a
:
Darwin ndo-mbp.local 20.1.0 Darwin Kernel Version 20.1.0: Sat Oct 31 00:07:10 PDT 2020; root:xnu-7195.50.7~2/RELEASE_ARM64_T8101 x86_64
知道这里发生了什么吗?我对 Mac OS 比较陌生,所以可能我遗漏了一些明显的东西。
答案 0 :(得分:2)
我遇到了同样的问题。
最终解决方案在~/.tmux.conf
中,添加:
set-option -g default-shell /path/to/arm64/zsh
然后杀死并重新启动tmux:
sudo kill -9 [PID of tmux]
tmux
uname -a
然后返回 arm64。
答案 1 :(得分:0)
我想补充一点,我在上面的答案中挣扎(没有人的错,我只是一个菜鸟)。我所做的不是以传统方式(~/.tmux.conf)创建配置文件,而是将文件明确地放在 /usr/local/etc/(仍将其命名为 tmux.conf),因为那是 tmux 会寻找的地方无论如何,它奏效了。
答案 2 :(得分:0)
现在 M1 CPU 已经存在一段时间了,社区也有时间弄清楚,我手动交叉编译了 arm64 的 Alacritty,因为它们还没有官方二进制文件(Github Actions 显然不会构建它们还)。
但是从那里开始,我在 arm64 模式下 (uname -m
== arm64
:thumbsup:) 很高兴,然后能够从他们的网站上以推荐的方式删除和重新安装 brew 和 tmux。< /p>
按照所有说明进行操作,一切顺利。我认为只是有点早,并且在这里和那里进行手动更改,整个事情都被搞砸了。
不过,我现在确实遇到了一个不相关的问题——那就是 tmux
不会以非 root 用户身份启动。它只是立即崩溃哈哈。当以 sudo
开始时,它以我预期的配置打开,uname -m
确认它是 arm64 版本,但是我无法让它以我的普通用户启动。不管怎样,改天再说吧!