You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Mac M2迁移后direnv在Rosetta模拟环境运行,Shell环境正常问题求助

解决direnv在M2 MacBook Pro中运行于Rosetta模拟环境的问题

问题情况

  • 环境:Mac OSX系统,从x86_64设备通过迁移工具迁移至M2 MacBook Pro
  • 验证结果:
    • 执行uname -m输出arm64,确认Shell处于arm64原生环境
    • 执行direnv exec . uname -m输出x86_64,确认direnv运行在Rosetta模拟环境
  • 已尝试操作:卸载并重新安装direnv,问题未解决

解决方案

1. 确认direnv的安装架构

先检查当前direnv的架构类型:

file $(which direnv)

若输出包含x86_64,说明安装的是适配旧架构的版本。

2. 安装arm64原生版本的direnv

若使用Homebrew安装:

确保终端未开启Rosetta模拟(打开终端时不要勾选“使用Rosetta打开”),且Homebrew为arm64版本(路径应为/opt/homebrew/bin/brew),执行以下命令:

brew uninstall direnv
brew install direnv

如果系统同时存在x86版本的Homebrew,需确保当前终端使用的是arm64版本的Homebrew环境。

若从源码编译安装:

在arm64原生终端中执行:

git clone https://github.com/direnv/direnv.git
cd direnv
make
sudo make install

3. 验证修复效果

重启Shell后,再次执行:

direnv exec . uname -m

若输出arm64,则问题已解决。


内容的提问来源于stack exchange,提问作者Quinlan Jung

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.11 02:35:07