我正在使用boost(使用time.h)和一个C库(libav),它有一个也称为time.h的头文件。所以当boost尝试使用time.h时,它会从libav调用time.h作为ANSI C标准time.h。
如何强制libav找到它自己的time.h并提升使用ANSI C标准time.h?我根本不想修改这些库,因为这些代码需要在任何地方构建。
谢谢!
答案 0 :(得分:3)
time.h不应与/ usr / include中的time.h冲突,因为它包含在libav源中:
#include "libavutil/time.h"
至少它在git repository的最新版本的libav中包含了这种方式。如果你的版本较旧,那就不行了,你应该升级。如果你错误地在include路径中设置libavutil目录,你应该删除它(或更改为不包含dir libavutil本身的路径)。