#include возвращает фатальную ошибку: util/Timer.h: нет такого файла или каталога

#c #file #cmake #header #clion

#c #файл #cmake #заголовок #clion

Вопрос:

Это мой код. Я не понимаю, почему компилятор не может найти файл заголовка <util/Timer.h> . Что я сделал не так? Я понятия не имею, поскольку <util/Timer.h> не создан в моем проекте. Должен ли я все еще добавлять его в файл cmake в качестве пути? Я уже проверил на наличие орфографических ошибок и т. Д. Я получаю «предупреждение об отсутствии такого файла или каталога».

 #include <gtest/gtest.h>


#define protected public
#define private public
#include "ShakingDevice.h"
#undef protected
#undef private

#include <limits.h>
#include "TestConfig.h"
#include <util/Timer.h>

class ShakingDeviceTest : public ::testing::Test {
 public:
  ShakingDevice *s = nullptr;

  virtual void SetUp() {
    //
  }

  virtual void TearDown() {
    //
  }
};

TEST_F(ShakingDeviceTest,testTime) {
  ASSERT_LE(abs(time - expected), 100);
}
 

Комментарии:

1. Кто или что сказал вам включить этот файл? Какова его цель?

2. Какую платформу вы используете? Чувствителен ли он к регистру? Вы пробовали #include <util/timer.h> ?

Ответ №1:

Вы должны проверить свой cmake или ПУТЬ в вашей платформе, причина, по которой «нет такого файла или каталога с предупреждением». если система не может найти этот файл по указанным вами путям, вам следует добавить INCLUDE в ваш файл cmake, чтобы система знала, где найти этот головной файл .

Ответ №2:

Вместо этого я использовал #include»chrono», и теперь это работает. Я посмотрел некоторые библиотеки здесь, в stackoverflow, но это была неправильная.