似乎,每当发布新版本时,终端都会要求使用不同版本的 Glibc。所以如果终端给出这样的错误:
checking the GLIBC_VERSION version... unsupported version 2.19
configure: error: Valgrind requires glibc version 2.2 - 2.14
然后您需要编辑 2.19 版本的配置文件,因为该版本不受支持,如终端报告的那样。
所以在一些文本编辑器中打开 - 从 valgrind 目录中调用 configure 的文件,通过 CTRL+F 找到以下代码:
case
"${GLIBC_VERSION}" in
2.2)
当您在编辑器中到达该行时(总行号可能会根据发布版本而变化)您会发现以下代码以 2.2) 开头。
2.2)
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: 2.15 family" >&5
$as_echo "2.15 family" >&6; }
$as_echo "#define GLIBC_2_14 1" >>confdefs.h
DEFAULT_SUPP="glibc-2.X.supp ${DEFAULT_SUPP}"
DEFAULT_SUPP="glibc-2.34567-NPTL-helgrind.supp ${DEFAULT_SUPP}"
DEFAULT_SUPP="glibc-2.X-drd.supp ${DEFAULT_SUPP}"
;;
如果您向下滚动,您会发现所有其他版本的代码都相同 from 2.2 to 2.21... 。在上一个版本之后复制并粘贴上一个版本的代码(请注意,仅在我的情况下它是2.2 版本,它以2.2) 开头,您需要将所有这些2.2) 更改为终端所需的版本在我的情况下是2.19)。
因此,如果终端需要版本 2.19,您将添加的代码将如下所示:
2.19)
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: 2.19 family" >&5
$as_echo "2.19 family" >&6; }
$as_echo "#define GLIBC_2_19 1" >>confdefs.h
DEFAULT_SUPP="glibc-2.X.supp ${DEFAULT_SUPP}"
DEFAULT_SUPP="glibc-2.34567-NPTL-helgrind.supp ${DEFAULT_SUPP}"
DEFAULT_SUPP="glibc-2.X-drd.supp ${DEFAULT_SUPP}"
;;
如果沿着你的代码往下走,下一行应该有darwin)。