gpt4 book ai didi

autotools - config.h 应该公开吗?与Python的冲突

转载 作者:行者123 更新时间:2023-12-03 06:54:42 24 4
gpt4 key购买 nike

我正在开发一个 C 库,该库具有与 Python 的 SWIG 绑定(bind)。在我的自动工具配置中,我检查 gettimeofday 函数。我发现我无法编译项目的 Python 部分,因为它与文件 pyconfig.h 冲突,该文件也定义了 HAVE_GETTIMEOFDAY。

这似乎是一个非常普遍的问题,我很惊讶地发现 Python 的 config.h 与我自己的冲突。在我的项目中,我将 config.h 保留为私有(private),即不使用 make install 进行安装。我的印象是这是正确的。我至少找到了one blog post分享此观点的地方。

Python 与我的 config.h 冲突是一个错误吗?

编辑:我通过添加解决了这个问题

AC_DEFINE(Py_PYCONFIG_H,[],[Defined here to avoid conflicts with pyconfig.h])

到我的configure.ac。问题仍然存在,config.h 应该在您的项目中公开,还是保持私有(private),仅在构建期间可供实现文件使用?

最佳答案

不应将其公开,以避免出现像您遇到的问题。请参阅Gentoo autotools best-practices document具体来说,以 The config.h 头文件应被视为内部头文件开头的段落。

就您而言,我会做与您完全相同的事情:添加一个 #define 来阻止处理该文件。

关于autotools - config.h 应该公开吗?与Python的冲突,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1956145/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com