编译错误:目录与c ++标准头<list> </list>同名

时间:2013-12-04 18:23:01

标签: c++ c compiler-errors makefile

我的项目中的文件出现以下编译错误:

  

Flags.h:4:16:错误:../../ somepath / list:是一个目录

该错误是由于在该行的Flags.h文件中存在类似#include <list>的包含。我在路径../../somepath/上有一个名为 list 的目录,此路径是Makefile中的包含路径。

(Flags.h目录中有很多其他文件需要../../somepath/才有包含)

据我说,重命名目录 list 是解决错误的方法,但这涉及到很多返工。

那么有没有其他正确和简单的方法来解决问题,这样,项目正在进行中,我将来也不会面临这个问题?

1 个答案:

答案 0 :(得分:1)

尝试更改包含路径,以便STL的位置位于../../somepath目录之前。这样,在开始搜索list

之前,预处理器应该找到“正确的”../../somepath