我正在构建一个由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 ...否” 我该如何解决?
答案 0 :(得分:1)
--prefix
没有指定./configure查找库的位置。它设置运行make install
时安装文件的位置。 ./configure --help
会向您显示更多选项。
如果使用pkg-config,则无法设置GLIB_CFLAGS
和GLIB_LIBS
env变量来更改特定包的路径。
但你先检查./configure --help
。
答案 1 :(得分:1)
假设您的项目使用pkg-config和PKG_CHECK_MODULES
宏,您可以查看pkg-config查找.pc
文件的位置:pkg-config --variable pc_path pkg-config
您可以通过设置PKG_CONFIG_PATH
变量为pkg-config指定路径首先。因此,您可以使用以下内容调用configure:
env PKG_CONFIG_PATH="$HOME/local/pkgconfig" ./configure --prefix=$HOME/local