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

Yocto构建失败:cmake-native_3.16.5.bb:do_compile返回错误码1

解决Yocto构建中cmake-native_3.16.5编译失败问题

针对Ubuntu 20.04 LTS下构建Yocto项目时出现的ERROR: Task (/home/ahmedshindy/yocto-labs/poky/meta/recipes-devtools/cmake/cmake-native_3.16.5.bb:do_compile) failed with exit code '1'错误,可按以下步骤排查解决:

  • 补全系统依赖
    Yocto构建依赖完整的编译环境,执行以下命令安装所有必备包:

    sudo apt-get update && sudo apt-get install gawk wget git diffstat unzip texinfo gcc-multilib build-essential chrpath socat cpio python3 python3-pip python3-pexpect xz-utils debianutils iputils-ping python3-git python3-jinja2 libegl1-mesa libsdl1.2-dev pylint3 xterm libssl-dev
    

    其中libssl-dev是cmake编译常缺失的依赖,必须确保安装。

  • 清理cmake-native构建缓存
    缓存损坏是常见诱因,执行以下命令清理后重新构建:

    bitbake -c cleansstate cmake-native
    bitbake cmake-native
    

    若需重启整个项目构建,直接执行教程中对应的镜像构建命令(如bitbake core-image-minimal)即可。

  • 同步Poky分支代码
    若使用的Poky分支代码过旧,可能存在系统兼容性问题,切换到对应稳定分支并更新:

    cd /home/ahmedshindy/yocto-labs/poky
    git checkout dunfell  # cmake 3.16.5对应dunfell分支
    git pull
    source oe-init-build-env
    

    之后重新执行构建流程。

  • 限制编译线程数
    过多编译线程会导致系统资源耗尽,修改build/conf/local.conf文件,添加或调整以下配置(根据CPU核心数调整数值,示例为4核配置):

    BB_NUMBER_THREADS = "4"
    PARALLEL_MAKE = "-j 4"
    
  • 定位具体错误原因
    若以上方法无效,查看详细编译日志定位问题:

    cat /home/ahmedshindy/yocto-labs/build/tmp/work/x86_64-linux/cmake-native/3.16.5-r0/temp/log.do_compile | grep -A 20 -B 5 error
    

    根据日志中的具体错误提示(如缺失文件、编译语法问题)针对性解决。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.05 05:45:34