我在 cygwin 上使用了 autoconf/automake 配置脚本,但我遇到的问题是它无法找到我的依赖项。
例如,在我的 configure.ac 中:
AC_CHECK_LIB(mp3lame,lame_init,,AC_MSG_ERROR(找不到所需的库 LAME。)) AC_CHECK_HEADER(lame/lame.h,,AC_MSG_ERROR(找不到 LAME 的头文件。))
找跛脚。Lame 已安装,如果我安装了,我locate lame.h
会在/usr/local/include/lame/lame.h
. 现在,如果我设置 LIBRARY_PATH 和 INCLUDE_PATH
导出 INCLUDE_PATH=/usr/local/include/ 导出 LIBRARY_PATH=/usr/local/lib/
它按预期工作。我通过下载并运行安装了 lame:
./configure
make
make install
所以我认为它应该以一个“足够标准”的路径结束,以便我的配置脚本找到它。以类似的方式,我正在使用以下方法检查 json 解析器 jansson:
PKG_CHECK_MODULES(JANSSON,jansson)
除非我这样做,否则它不会找到它:
导出 PKG_CONFIG_PATH=/usr/local/lib/pkgconfig/
这是 cygwin 的问题(我不这么认为)还是我的 configure.ac 脚本有问题?