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

Bitbake构建trickle报错libevent not found的问题求助

解决Bitbake构建trickle时找不到libevent的问题

针对你在基于Yocto Zeus的Petalinux 2020.1中构建trickle时遇到的configure: error: libevent not found错误,以下是几个可行的解决方向:

1. 确认libevent的开发文件已正确部署到构建环境

Yocto中,libevent包提供运行时库,其开发文件(头文件、pkg-config配置)由libevent-dev自动关联提供,因此DEPENDS中声明libevent是正确的。你需要验证libevent的开发文件是否被正确部署到构建系统的sysroot中:

  • 执行bitbake libevent -c populate_sysroot,检查${STAGING_DIR_HOST}${libdir}/pkgconfig/目录下是否存在libevent.pc;
  • 同时确认${STAGING_DIR_HOST}${includedir}/下有event.h等libevent头文件。

如果这些文件缺失,需要检查libevent的配方是否包含inherit pkgconfig,或者在do_install阶段是否正确安装了pkg-config配置文件。

2. 为trickle的configure指定libevent路径

trickle的autotools脚本可能无法自动识别STAGING_DIR中的libevent位置,你可以在配方中添加配置参数或环境变量来明确路径:

方式一:通过EXTRA_OECONF传递libevent路径

EXTRA_OECONF += "--with-libevent=${STAGING_DIR_HOST}"

方式二:设置pkg-config路径确保能找到配置文件

do_configure_prepend() {
    export PKG_CONFIG_PATH="${STAGING_DIR_HOST}${libdir}/pkgconfig:${PKG_CONFIG_PATH}"
}

3. 检查trickle的configure依赖声明

查看trickle源码根目录的configure.ac文件,确认它查找libevent的方式:

  • 如果使用PKG_CHECK_MODULES([LIBEVENT], [libevent]),需确保libevent的.pc文件版本和路径符合要求;
  • 如果使用AC_CHECK_LIB(event, ...),需确认${STAGING_DIR_HOST}${libdir}/下存在libevent的库文件,且链接路径正确。

调整后的参考配方

整合上述修改后的完整配方示例:

DESCRIPTION = "trickle is a voluntary, cooperative bandwidth shaper. trickle works entirely in userland and is cross platform compatible."
LICENSE = "BSD"
LIC_FILES_CHKSUM = "file://LICENSE;md5=d3a2bbd2a4afe8c5578c24d761f580f8"

DEPENDS += "libevent libtirpc"

SRCREV = "09a1d955c6554eb7e625c99bf96b2d99ec7db3dc"
PV = "1.07+git09a1d95"
SRC_URI = "git://github.com/mariusae/trickle;protocol=https"

S = "${WORKDIR}/git"

inherit autotools

EXTRA_OECONF += "--with-libevent=${STAGING_DIR_HOST}"

do_configure_prepend() {
    export PKG_CONFIG_PATH="${STAGING_DIR_HOST}${libdir}/pkgconfig:${PKG_CONFIG_PATH}"
}

do_install() {
    install -d ${D}${bindir}
    install -m 0755 trickle ${D}${bindir}
    install -m 0755 tricklectl ${D}${bindir}
    install -m 0755 trickled ${D}${bindir}
}

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.23 03:43:23