【问题标题】:autoconf unable to find pkg-config (PKG_PROG_PKG_CONFIG failing)autoconf 无法找到 pkg-config(PKG_PROG_PKG_CONFIG 失败)
【发布时间】:2019-11-13 15:39:20
【问题描述】:

我正在 yocto/openembedded 交叉编译环境中构建程序。它使用以下 configure.ac 文件

AC_INIT([my-program], [1])
AM_INIT_AUTOMAKE([-Wall -Werror foreign])
AC_LANG(C++)
AC_PROG_CXX
AX_PTHREAD()
PKG_PROG_PKG_CONFIG
if test -z "$PKG_CONFIG"; then
  AC_MSG_WARN([Cannot find pkg-config, make sure it is installed in your PATH])
fi
PKG_CHECK_MODULES(LIBPNG, libpng >= 1.6.34)
PKG_CHECK_MODULES(FREETYPE2, freetype2 >= 21.0.15)
PKG_CHECK_MODULES(EGL, egl > 0)
PKG_CHECK_MODULES(GLES2, glesv2 > 0)
PKG_CHECK_MODULES(GLM, glm >= 0.9.9)
PKG_CHECK_MODULES(SPATIALITE, spatialite >= 4.3.0)
AC_CONFIG_FILES([Makefile])
AC_OUTPUT

配置步骤失败,因为它找不到 pkg-config 配置可执行文件。我知道 pkg-config 在构建环境中设置正确,因为它适用于其他软件包。

日志文件显示未设置 PKG_CONFIG 环境变量。这应该由PKG_PROG_PKG_CONFIG 命令完成,这会让我相信我的配置文件或 bitbake 配方有问题。

我在配置文件中缺少什么?

作为参考,这里是 bitbake 配方文件 https://gist.github.com/j-omega/15af56fce3dc7f515fedc7d891e0dd74

【问题讨论】:

  • 您需要将配方中的DEPENDS_${PN} 替换为DEPENDS。也许尝试删除 PKG_PROG_PKG_CONFIG 行或将其替换为AC_REQUIRE([PKG_PROG_PKG_CONFIG])

标签: yocto autotools autoconf bitbake


【解决方案1】:

删除AX_PTHREAD() 后,PKG_CONFIG 设置正确。这解决了问题并允许配置步骤成功完成。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2012-01-24
    • 1970-01-01
    • 2014-07-04
    • 2013-02-13
    • 1970-01-01
    • 2018-10-06
    • 2014-06-05
    • 1970-01-01
    相关资源
    最近更新 更多