为了检查一个库、函数或者全局变量,Autoconf configure脚本试图编译并连接一个使用它的小程序。 不像Metaconfig,它在缺省情况下对C库使用nm或者ar以试图确认可以使用那个函数。 由于与函数相连接避免了处理nm和ar的各个变种的选项及输出格式,而且不必处理标准库的位置, 所以与函数连接通常是更加可靠的办法。如果需要,它还允许进行交叉配置或者检查函数的运行是特征。另一方面, 它比一次性扫描库要慢一些。

少数系统的连接器在出现找不到的函数错误(unresolved functions)时不返回失败的退出状态。这个错误使得由Autoconf 生成的配置脚本不能在这样的系统中使用。然而,有些这样的连接器允许给出选项以便正确地返回错误状态。 Autoconf目前还不能自动地处理这个问题。如果用户遇到了这样的问题,他们可能可以通过在环境中设置LDFLAGS 以把连接器所需要的选项(例如,`-Wl,-dn’on MIPS RISC/OS)传递给连接器,从而解决这个问题。

AC_TRY_LINK用于编译测试程序,以测试函数和全局变量。AC_CHECK_LIB还用本宏把被测试的库 暂时地加入LIBS并试图连接一个小程序,从而对库进行检查(参见库文件)。

宏: AC_TRY_LINK (includes, function-body, [action-if-found [, action-if-not-found]])
根据当前语言(参见对语言的选择),创建一个测试程序以察看一个 函数体为function-body的函数是否可以被编译和连接。

对C和C++来说,includes给出了所有function-body中的代码需要的#include语句 (如果当前选定的语言是Fortran 77,includes将被忽略)。如果当前语言是C或者C++,本宏在编译时还将使用 CFLAGS或者CXXFLAGS,以及CPPFLAGS。如果当前选定的语言是Fortran 77,那么 在编译时将使用FFLAGS。然而,在任何情况下,连接都将使用LDFLAGS和LIBS。

如果文件被成功地编译和连接了,就运行shell命令action-if-found,否则就运行action-if-not-found。

宏: AC_TRY_LINK_FUNC (function, [action-if-found [, action-if-not-found]])
根据当前语言(参见对语言的选择),创建一个测试程序以察看一个含有function 原型和对它的调用的程序是否可以被编译和连接。

如果文件被成功地编译和连接了,就运行shell命令action-if-found,否则就运行action-if-not-found。

宏: AC_TRY_LINK_FUNC (function, [action-if-found [, action-if-not-found]])
试图编译并且连接一个与function相连接的小程序。如果文件被成功地编译和连接了,就运行shell命令 action-if-found,否则就运行action-if-not-found。

宏: AC_COMPILE_CHECK (echo-text, includes, function-body, action-if-found [, action-if-not-found])
本宏是AC_TRY_LINK的一个过时的版本。此外,如果echo-text不为空,它首先还要把`checking for echo-text’打印到标准输出。用AC_MSG_CHECKING 和AC_MSG_RESULT来代替本宏的打印消息的功能(参见打印消息)。