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

Manjaro执行cmake ..时提示Could not find CMAKE_ROOT错误求助

Manjaro下CMake报错"Could not find CMAKE_ROOT"的解决方法

问题复现

执行cmake ..时出现以下错误:

CMake Error: Could not find CMAKE_ROOT !!!
CMake has most likely not been installed correctly.
Modules directory not found in

cmake version 3.25.2

CMake suite maintained and supported by Kitware (kitware.com/cmake).

已尝试通过sudo pamac install base-devel安装cmake、手动设置CMAKE_ROOT环境变量、卸载重装cmake、直接调用/usr/bin/cmake等操作,问题仍未解决。

解决步骤

  • 确认CMake模块目录的实际位置
    先通过包管理工具查询CMake的文件分布:

    pacman -Ql cmake | grep Modules
    

    输出会显示Modules目录的路径,例如/usr/share/cmake-3.25/Modules,此时CMAKE_ROOT应设置为该目录的上级路径/usr/share/cmake-3.25,而非/usr/share/cmake或/usr/bin/cmake。

  • 临时指定CMAKE_ROOT测试
    在执行cmake前临时设置环境变量,验证路径是否正确:

    CMAKE_ROOT=/usr/share/cmake-3.25 cmake ..
    

    如果此命令能正常执行,再将该环境变量写入~/.bashrc或~/.zshrc(根据你使用的shell):

    echo 'export CMAKE_ROOT=/usr/share/cmake-3.25' >> ~/.bashrc
    source ~/.bashrc
    
  • 检查CMake安装完整性
    验证cmake包的文件是否完整:

    pacman -Qk cmake
    

    如果输出显示有文件缺失,执行强制重装:

    sudo pacman -S --overwrite '*' cmake
    
  • 清理损坏的CMake缓存
    当前目录下的缓存文件可能导致异常,删除后重新执行:

    rm -rf CMakeCache.txt CMakeFiles
    cmake ..
    
  • 排查多版本CMake干扰
    检查当前调用的cmake是否为系统安装版本:

    which cmake
    

    如果输出不是/usr/bin/cmake,调整PATH环境变量,确保系统路径优先,或直接使用绝对路径执行:

    /usr/bin/cmake ..
    

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.02 23:55:25