GMOCK Clang pesky error "/usr/include/limits.h:123:16: fatal error: 'limits.h' file not found"

GMOCK Clang pesky error "/usr/include/limits.h:123:16: fatal error: 'limits.h' file not found"

使用 Linux OS 使用 GMOCK 框架进行 C++ 开发。我有以下代码。

#include <stdint.h>
#include <string>
#include "gmock/gmock.h"
#include "dispat_tasks.hh"

namespace testing {

namespace internal {
    GTEST_API_ string JoinAsTuple(const Strings& fields);
}

namespace DispatTasksTestNS {
using ::testing::Invoke;

// Fixture
class DispatTasksTest : public ::testing::Test {
 public:
    DispatTasksTest() {}
    ~DispatTasksTest() {}
    dispat_tasks SMD;
};
}  // testing NS
}

当我执行 clang 语法检查时,出现了流动错误。

/usr/include/limits.h:123:16: fatal error: 'limits.h' file not found

第123行的内容是:

# include_next <limits.h>

有什么方法可以解决上述错误?

这是我在 Ubuntu Linux.

中所做的

在终端中:

sudo find -name "limits.h"

我从列表中选择了 usr/include 文件夹并添加了以下编译器选项:

isystem /usr/include

这解决了我的问题。

sudo apt-get install libc++1

sudo apt-get install libc++-dev

解决了我的问题

当使用 clang 时

我尝试 -I/usr/lib64/clang/9.0.1/include/ 解决了我的问题。 /usr/include/limits.h 将开始寻找替代的 limits.h,它应该适合编译器的环境。

尝试找出像/xxx/xxx/compiler_you_used/xxx/include

这样的文件夹