1

我正在寻找一个 AC_CHECK_* 函数,让我根据 pppd/pppd.h 是否包含来更改代码中的行为

extern struct notifier *ipv6_up_notifier;

这是最近添加的。它实际上是在 pppd/ipc6cp.h 中提供的:

struct notifier *ipv6_up_notifier = NULL;

我试过了

AC_CHECK_DECLS(notifier *ipv6_up_notifier,,, [#include <pppd/pppd.h>])
AC_CHECK_DECLS(extern notifier *ipv6_up_notifier,,, [#include <pppd/pppd.h>])
AC_CHECK_DECLS(struct notifier *ipv6_up_notifier,,, [#include <pppd/pppd.h>])
AC_CHECK_DECLS(extern struct notifier *ipv6_up_notifier,,, [#include <pppd/pppd.h>])

但这一切导致

checking whether notifier *ipv6_up_notifier is declared... no

当 ./configure 时。是否有可能检查extern?

4

1 回答 1

1

正如评论中所讨论的,第一个参数是变量名(没有类型):

AC_CHECK_DECLS([ipv6_up_notifier], [], [], [#include <pppd/pppd.h>])
于 2012-10-29T13:08:09.183 回答