1

我正在构建一个由 GNU autoconf 配置的开源项目。它取决于 glib2.36,它报告 glib 库的版本低于该版本。但是我不想在“/usr/lib”路径中替换我系统的glib。我的想法是下载 glib2.36 并从头开始构建并将其安装到“$HOME/local”。然后我想使用 --prefix=$HOME/local 来配置项目。

    $cd ~/tmp/glib-2.36.0$
    $./configure  --prefix=$HOME/local
    $make
    $make install

    $cd ~/tmp/project
    $./configure --prefix=$HOME/local

但它仍然报告“检查 GLIB - 版本 >= 2.36.0 ... 否”我该如何解决?

4

2 回答 2

1

--prefix没有指定 ./configure 查找库的位置。它设置运行时安装文件的位置make install./configure --help将向您展示更多选择。

如果使用 pkg-config,则无法设置GLIB_CFLAGSGLIB_LIBSenv 变量来更改特定包的路径。

但你会先检查./configure --help

于 2013-04-02T07:15:01.603 回答
1

假设您的项目使用 pkg-config 和PKG_CHECK_MODULES宏,您可以检查 pkg-config 在哪里查找.pc文件:pkg-config --variable pc_path pkg-config

您可以通过设置变量指定 pkg-config 首先搜索的路径PKG_CONFIG_PATH因此,您可以使用以下内容调用配置:

env PKG_CONFIG_PATH="$HOME/local/pkgconfig" ./configure --prefix=$HOME/local

于 2013-04-02T08:29:32.570 回答