【问题标题】:autoconf: Detect deprecated functions (in Glibc)autoconf:检测不推荐使用的函数(在 Glibc 中)
【发布时间】:2016-11-25 05:55:51
【问题描述】:

在 GNU libc 中不推荐使用 Autotools 测试给定函数的方法吗?

我一直在使用 AC_CHECK_FUNCS(readdir_r) 来测试系统是否有readdir_r()。但现在,由于 GNU Libc 2.24,readdir_r() 已弃用,我想在这些系统上使用 readdir()

autoconf 是否有一个宏来测试给定函数是否被弃用?如果没有,最好的处理方法是什么?

我知道带有-Wdeprecated-declarations 的较新 GCC 会打印一个警告。但我正在寻找的是在配置时找到不推荐使用的功能,以便我可以使用推荐的功能。

【问题讨论】:

    标签: glibc autoconf


    【解决方案1】:

    不容易,因为AC_CHECK_FUNCS 在链接时检查该功能是否可用。你可以做的是使用attribute.m4(比如systemd附带的),使用CC_CHECK_WERRORCC_CHECK_FLAGS_APPEND-Wdeprecated-declarations,然后使用AC_COMPILE_IFELSE来确定整个事情是否编译。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2019-05-13
      • 2016-03-01
      • 2012-11-14
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多