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

在macOS Catalina上安装mysql@5.6时遭遇cmake: "cxx11" is not a recognized standard错误求助

解决macOS Catalina安装mysql@5.6时的cmake "cxx11"错误

我之前帮朋友处理过完全一样的问题——在Catalina上装老版本的mysql@5.6时,新cmake已经不再识别cxx11这个旧的标准参数了,导致编译失败。你之前试的inkscape/xquartz方案其实是针对其他依赖冲突的,和这个cmake错误不相关,所以没用很正常。试试下面这几个亲测有效的方法:

方法一:降级cmake到兼容版本

mysql@5.6的编译脚本是针对旧版cmake写的,我们可以安装一个还支持cxx11参数的cmake版本:

  • 先卸载当前的cmake(避免冲突):
    brew uninstall --force cmake
    
  • 安装3.17.x版本的cmake(这个版本是最后一批支持旧参数的版本之一):
    brew install cmake@3.17
    
  • 把这个旧版cmake加入环境变量,确保brew编译时优先用它:
    echo 'export PATH="/usr/local/opt/cmake@3.17/bin:$PATH"' >> ~/.zshrc
    source ~/.zshrc
    
  • 现在重新执行mysql@5.6的安装命令:
    brew install mysql@5.6
    

方法二:手动修改mysql@5.6的brew配方

如果降级cmake不行,我们可以直接修改brew的mysql@5.6编译配置,把旧的参数换成新cmake能识别的:

  • 打开mysql@5.6的配方文件:
    brew edit mysql@5.6
    
  • 在编辑器里找到包含-DCMAKE_CXX_STANDARD=cxx11的行,把它改成:
    -DCMAKE_CXX_STANDARD=11
    
    (如果配方里是用CMAKE_CXX_FLAGS指定的标准,就改成-std=c++11)
  • 保存退出后,重新运行安装命令:
    brew install mysql@5.6
    

方法三:用Rosetta 2编译(仅Apple Silicon的Catalina)

如果你的Mac是Apple Silicon芯片(Catalina对M1是Beta版),可以通过Rosetta 2来运行终端,模拟Intel环境编译:

  • 右键终端图标 → 显示简介 → 勾选「使用Rosetta打开」
  • 重启终端后,重新执行安装命令:
    brew install mysql@5.6
    

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.04.30 04:32:45