如何使用自动conf来检查httpd.h typedef结构的成员是否存在



如何使用 APXS 作为编译器制作 GNU autoconf 脚本来测试类型定义结构成员?

我已经定义了以下测试,但结果不是我所期望的......

AC_CHECK_MEMBER(struct conn_rec.remote_ip, define 'USE_CON_REC_REMOTE_IP',,[#include "httpd.h"]);
AC_CHECK_MEMBER(struct conn_rec.client_ip, define 'USE_CON_REC_CLIENT_IP',,[#include "httpd.h"]);
AC_CHECK_MEMBER(struct conn_rec.remote_addr, define 'USE_CON_REC_REMOTE_ADDR',,[#include "httpd.h"]);
所有这些测试都返回"

否",即使我知道第一个测试和最后一个测试应该返回"是"。我怀疑这可能是因为这些是 typedefs 而不是结构,和/或因为 autoconf 没有使用 APXS 来运行测试。

完整代码在 https://github.com/rritoch/PikeVM/blob/master/root/boot/system-1.1/apache/configure.ac

我希望有一个预先存在的解决方案,不需要制作自定义测试脚本。

AC_CHECK_MEMBER用于C/C++编译器。有一些 apxs 宏可以帮助使用 apxs 设置编译。 将AC_CHECK_MEMBER转换为适合 apxs 的宏应该不会太难。

相关内容

  • 没有找到相关文章

最新更新