如何在不破坏 Fedora 的情况下使用特定库构建工具?

从来不需要改变标准的 Fedora 16 核心增长部分。 我需要构建 混乱-mx 项目,但是这个集合需要 glib - 2.0.32。 除此之外,artful - 2 需要 libffi - 3.0.11。

我可以下载源代码并构建这些库,但我担心安装它们会破坏系统的其余部分。

混乱-mx 项目 利用 autotools 并寻找 glib - 2 变体。

查询如下:

  1. 如果我构建并安装了新组件,并且出现故障,您可以使用 yum 或类似的东西返回吗?

  2. 有没有办法获得自动工具以在其他目录站点中搜索设置的标题?

2
2022-06-07 14:39:48
资源 分享
答案: 2

试图通过车辆查找依赖项的来源 - 设备有一个 configure.ac 数据(和/或 Makefile.am,我对此不确定),其中指定了这些依赖项。 大多数时候,人们/IDE 肯定只是将他们当前安装的库版本作为依赖项,但实际上并不需要在当前版本中使用它们。

您可以尝试将调用的版本修改为您的版本,并尝试构建计划。

您不能直接在某些替代路径中进行自动工具搜索,但 IIRC 自动工具使用 pkg - config 来建立捆绑包 - 设置细节(man pkg - config)。 您可以通过环境变量 PKG_CONFIG_PATH 告诉 pkg - config 查看其他目录。 但是,pkg - config 路径仅在您将最近的集合真正安装在某个地方时才有效。 然而在那之后,我相信你可以编辑 *. pc 数据需要混乱 - mx 静态链接这些集合。

如果您安装了 2 个版本的库并经常使用一个版本,并且在某些情况下还使用另一个版本,您可能会遇到麻烦。 如果你真的替换了 rpm 放在那里的数据,那你就搞砸了。

我的建议是自定义构建依赖关系,或者如果需要确定为什么需要更新版本的库 XY 并自定义混乱 - mx 资源以不需要该最新版本以及处理您当前的版本。 我的第二个最佳建议是为您分发所需的集合获取/构建捆绑包并安装它们。 你真的不应该跳出你的发行版设置的世界,即捆绑主管。 那里有邪恶的驱逐。:-)

1
2022-06-07 14:51:13
资源

不要尝试在系统目录中安装更新的 Gtk/Gnome 库。 它们的向后兼容性很差,您可能会破坏现有程序。

在单独的目录层次结构中编译和安装新集合。 运行 ./configure --help 以查看如何在编译集合时准确指定库的路径以及包含文件。 例如,如果您看到

PANGO_CFLAGS
            C compiler flags for PANGO, overriding pkg-config
PANGO_LIBS  linker flags for PANGO, overriding pkg-config

之后设置以下大气变量列表:

export PANGO_CFLAGS='-I /path/to/my/gnome/stuff/include'
export PANGO_LIBS='-L /path/to/my/gnome/stuff/libs'

--prefix=/path/to/my/gnome/stuff 传递给 ./configure,将所有小东西都挂载到您自己的目录中。

或者,如果您需要安装大量集合,这肯定会更简单,重建所有内容,包括使用 包配置。 在 /path/to/my/gnome/stuff 下也安装 pkg-config,之后设置

export PKG_CONFIG=/path/to/my/gnome/stuff/bin/pkg-config
2
2022-06-07 14:47:47
资源