Linux 上的 Autoreconf 和 <math.h>
Autoreconf and <math.h> on Linux
在使用 Autoreconf (Autoconf) 时如何传递“-lm”标志或指定要包含的库?
程序包含,我可以这样编译:
gcc -std=c99 myprogram -lm
但是当我编译 vi Autoreconf 时,我收到一条错误消息说
undefined reference to 'pow'
undefined reference to 'sqrt'
etc
问题出在 Linux,同样的程序在 OSX 上编译没有错误。
我如何编辑 configure.ac 或 Makefile.am 以获得 gcc 的 -lm 标志?
将此行添加到您的 Makefile.am:
AM_LDFLAGS = -lm
这会将 link 数学库添加到您的程序中。
将 AC_SEARCH_LIBS([sqrt], [m])
添加到您的 configure.ac
。
在使用 Autoreconf (Autoconf) 时如何传递“-lm”标志或指定要包含的库?
程序包含,我可以这样编译:
gcc -std=c99 myprogram -lm
但是当我编译 vi Autoreconf 时,我收到一条错误消息说
undefined reference to 'pow'
undefined reference to 'sqrt'
etc
问题出在 Linux,同样的程序在 OSX 上编译没有错误。
我如何编辑 configure.ac 或 Makefile.am 以获得 gcc 的 -lm 标志?
将此行添加到您的 Makefile.am:
AM_LDFLAGS = -lm
这会将 link 数学库添加到您的程序中。
将 AC_SEARCH_LIBS([sqrt], [m])
添加到您的 configure.ac
。