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

重装Flutter SDK后CMake执行ninja报错:No such file or directory

解决CMake找不到snap路径下ninja的问题

核心原因

从snap版Flutter切换到手动安装后,CMake仍残留了snap相关的路径配置,导致尝试调用不存在的/snap/flutter/current/usr/bin/ninja。

解决步骤

  • 清理项目和Flutter缓存
    先彻底清理项目构建文件和Flutter缓存:

    rm -rf build/
    flutter clean
    
  • 检查并修正环境变量
    打开终端,检查PATH里是否还存在snap的Flutter路径,确保手动安装的Flutter/bin路径排在最前面:

    echo $PATH
    

    如果有snap/flutter相关路径,编辑~/.bashrc或者~/.zshrc,删除对应的行,然后刷新环境变量:

    source ~/.bashrc
    
  • 确保系统已安装Ninja
    如果系统里没有Ninja,先安装:

    sudo apt install ninja-build
    
  • 强制CMake使用系统Ninja
    可以在CMakeLists.txt开头添加以下代码,让CMake自动查找系统中的Ninja:

    find_program(NINJA_EXECUTABLE ninja REQUIRED)
    set(CMAKE_MAKE_PROGRAM ${NINJA_EXECUTABLE})
    

    或者在Android Studio的CMake配置中,手动指定CMAKE_MAKE_PROGRAM为/usr/bin/ninja(路径根据实际安装位置调整)。

  • 验证Android Studio配置
    打开Android Studio,进入File > Settings > Languages & Frameworks > Flutter,确认SDK路径是手动安装的Flutter目录,不是snap的/snap/flutter/current。重启Android Studio后重新构建项目。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.12 14:05:47