macOS安装mujoco-py提示找不到GCC可执行文件的问题排查
问题场景
在macOS系统执行pip3 install -U 'mujoco-py<1.50.2,>=1.50.1'时触发报错,最终目标是安装并运行gym[mujoco]==0.19,曾参考过相关GitHub Issue但未解决(该Issue针对不同版本的mujoco)。
报错详情
File "/private/var/folders/1t/t0dzx5fn3jn1r9lqx_2j3m9m0000gn/T/pip-install-i8wi8lki/mujoco-py_48d744c3b7c64c6abb74252cb291ab88/mujoco_py/builder.py", line 320, in _build_impl
raise RuntimeError(
RuntimeError: Could not find GCC executable.HINT: On OS X, install GCC with
brew install gcc.
当前环境信息
- 已安装的编译器版本:
Apple clang version 14.0.3 (clang-1403.0.22.14.1)
Target: arm64-apple-darwin22.5.0
Thread model: posix
InstalledDir: /Library/Developer/CommandLineTools/usr/bin
- Python版本:
Python 3.9.17 (main, Jun 15 2023, 08:01:12)
[Clang 14.0.3 (clang-1403.0.22.14.1)] on darwin
问题原因与解决方法
核心原因
mujoco-py 1.50.x的构建脚本会强制查找名为gcc的可执行文件,不会自动识别或兼容Apple Clang。你当前安装的是Clang,不符合脚本的检测逻辑,因此触发报错。
解决步骤
安装GCC
用Homebrew安装官方GCC:brew install gcc安装完成后,GCC会以
gcc-xx的命名形式存在(例如gcc-13,具体版本取决于Homebrew的最新包)。创建软链接让系统识别
gcc命令
执行以下命令(将gcc-13替换为你实际安装的版本号):ln -s /usr/local/bin/gcc-13 /usr/local/bin/gcc验证GCC是否生效
执行gcc --version,确认输出为GCC的版本信息,而非Apple Clang。重新安装目标依赖
直接执行目标安装命令即可:pip3 install gym[mujoco]==0.19
备选方案(临时指定编译器)
如果不想创建软链接,可在安装时临时指定CC环境变量为GCC路径:
CC=/usr/local/bin/gcc-13 pip3 install -U 'mujoco-py<1.50.2,>=1.50.1'
内容的提问来源于stack exchange,提问作者sandboxj

