Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
我正在使用 boost(它使用 time.h)和一个 C 库(libav),它有一个也称为 time.h 的头文件。因此,当 boost 尝试使用 time.h 时,它会从 libav 调用 time.h,就像 ANSI C 标准 time.h 一样。
如何强制 libav 找到它自己的 time.h 并提升使用 ANSI C 标准 time.h?而且我根本不想修改库,因为这段代码需要在任何地方构建。
谢谢!
libav 中的 time.h 不应与 /usr/include 中的 time.h 冲突,因为它包含在 libav 源中:
#include "libavutil/time.h"
至少它以这种方式包含在来自 git 存储库的最新版本的 libav 中。如果您有旧版本,则不会这样做,您可能应该升级。如果您错误地将 libavutil 目录设置在包含路径中,则应将其删除(或更改为不包含 dir libavutil 本身的路径)。