【问题标题】:Where does autoconf's AC_CHECK_HEADERS verify the header files?autoconf 的 AC_CHECK_HEADERS 在哪里验证头文件?
【发布时间】:2011-06-23 21:08:14
【问题描述】:

我在编译其中一个开源库 (libopekele OpenID lib) 时遇到问题。

问题是我在需要编译它的系统上没有 sudo 访问权限。

运行配置。它抱怨缺少 htmltidy 库。 将 htmltidy 安装在 非标准 路径 /home/geekgod(因为我无法访问 /usr/usr/local)。

现在的问题是如何制作 libopekele 的配置脚本以从 /home/geekgod/include 中选择标头。

戳入libopkele的configure.ac脚本,它使用AC_CHECK_HEADERS搜索tidy.htidy/tidy.h。 我很确定它正在标准位置(/usr/include)寻找这些。 如何将/home/geekgod 添加到标准包含目录?

【问题讨论】:

  • 机械地回答你的问题:AC_CHECK_HEADERS 编译一个小型测试程序,使用AC_LANG_PUSHAC_LANG_POP 选择的任何一种语言的编译器(C 是默认值)。这会看到CPPFLAGS,这是您将其他搜索路径传递给编译器的方式。

标签: header include autoconf


【解决方案1】:

试试这个:

./configure CPPFLAGS=-I/home/geekgod/include --prefix=... --etc

【讨论】:

  • +1:您可能还想添加 LDFLAGS=-L/home/geekgod/lib
  • 谢谢大家,我需要同时设置 LDFLAGS 和 CPPFLAGS。
猜你喜欢
  • 2014-01-09
  • 1970-01-01
  • 2016-01-27
  • 2015-01-24
  • 2011-03-02
  • 1970-01-01
  • 1970-01-01
  • 2014-04-26
  • 2020-07-11
相关资源
最近更新 更多