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

Ubuntu 24.04下Meson构建因gobject-introspection-1.0依赖不满足失败

Ubuntu 24.04下Meson构建因gobject-introspection-1.0依赖不满足失败

嘿,我看你在Ubuntu 24.04上用Meson构建项目时碰到了依赖版本卡壳的问题,刚好我之前也处理过类似情况,来给你一步步拆解和解决~

问题复盘

你碰到的错误本质是pkg-config校验依赖版本不通过,具体的错误输出应该是这样的:

Called: `/usr/bin/pkg-config --modversion gobject-introspection-1.0` -> 1
stderr:
Package dependency requirement 'glib-2.0 >= 2.80.0' could not be satisfied.
Package 'glib-2.0' has version '2.72.0', required version is '>= 2.80.0'
Package dependency requirement 'gobject-2.0 >= 2.80.0' could not be satisfied.
Package 'gobject-2.0' has version '2.72.0', required version is '>= 2.80.0'

正如你排查到的,问题根源在系统的gobject-introspection-1.0.pc配置文件里:它明确要求glib-2.0 >= 2.80.0和gobject-2.0 >= 2.80.0,但你当前系统安装的这两个包版本只有2.72.0,自然就触发了校验失败,导致Meson构建中断。

几种解决思路(按推荐度排序)

1. 优先升级系统依赖包(最稳妥)

Ubuntu 24.04作为LTS版本,官方源里应该有满足要求的glib/gobject更新版本,先试试全量升级系统包:

sudo apt update && sudo apt full-upgrade

升级完成后,用下面的命令确认版本是否达标:

pkg-config --modversion glib-2.0
pkg-config --modversion gobject-2.0

如果输出的版本都≥2.80.0,那直接重新运行Meson构建就可以了~

2. 临时修改.pc文件的依赖要求(紧急方案,不推荐长期用)

如果你暂时没法升级系统(比如怕影响其他项目),可以临时修改gobject-introspection-1.0.pc的依赖版本限制:

sudo nano /usr/lib/x86_64-linux-gnu/pkgconfig/gobject-introspection-1.0.pc

找到Requires:那一行,把版本要求从>=2.80.0改成你当前的>=2.72.0,修改后应该是这样:

Requires: glib-2.0 >= 2.72.0, gobject-2.0 >= 2.72.0

保存退出后再跑Meson构建,应该能绕过校验。但要注意:这个修改会被后续的系统包更新覆盖,而且可能因为版本不匹配导致运行时bug,只能作为临时救急的手段。

3. 从源码编译安装高版本glib/gobject(适合自定义环境)

如果官方源里确实没有满足要求的版本,那就手动从源码编译安装:
首先安装编译依赖:

sudo apt install build-essential git meson ninja-build libffi-dev libpcre2-dev

然后克隆glib的源码仓库,切换到2.80.0或更高的稳定版:

git clone https://gitlab.gnome.org/GNOME/glib.git
cd glib
git checkout 2.80.0 # 也可以选最新的稳定版tag,比如2.82.x

接着编译安装到/usr/local目录(避免覆盖系统自带版本):

meson setup build --prefix=/usr/local
ninja -C build
sudo ninja -C build install

最后让pkg-config优先找到我们手动安装的版本:

export PKG_CONFIG_PATH=/usr/local/lib/pkgconfig:$PKG_CONFIG_PATH

做完这些再运行Meson构建,依赖校验应该就能通过了。

额外小建议

如果是长期的项目开发,更推荐用Docker这类容器工具隔离环境——拉一个干净的Ubuntu 24.04镜像,在容器里配置好所有依赖再构建,这样既不会污染本地系统,也能保证环境的一致性~

备注:内容来源于stack exchange,提问作者xenoid

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.04.15 13:44:28