Как добавить статическую библиотеку CppUTests в мой проект atmel studio

Я использую Atmel Studio 6.1.2 SP2. Я настраиваю CppUTest для нашего проекта встраиваемой системы. Я создал статическую библиотеку CPP для CppUTest Framework, которая успешно копировалась после небольшого изменения. Сейчас я включаю эту библиотеку в тестовый проект. Проект приложения C++.

Проблема, с которой я сейчас сталкиваюсь, заключается в том, что, хотя intellisense автоматически завершает мое включение, это означает, что он видит, где находится библиотека, при компиляции я получаю сообщение об ошибке "Нет файла или каталога".

В GccApplication1.cpp у меня есть это:

#include <avr32/io.h>
#include <CommandLineTestRunner.h>

int main(int ac, const char** av)
{
    /* These checks are here to make sure assertions outside test runs don't crash */
    CHECK(true);
    LONGS_EQUAL(1, 1);

    return CommandLineTestRunner::RunAllTests(ac, av);
}

И ошибка в том, что он не может найти CommandLineTestRunner.h. Я пробовал с "" и <>, но это не видно.

Есть идеи? Для дополнительной информации. Я следую инструкциям Atmel, вот учебник:

2 ответа

Решение

Добавление библиотеки только говорит компоновщику, что файл доступен для связи с остальной частью вашего объектного кода. То, что кажется отсутствующим, говорит компилятору, где он может найти заголовочные файлы для библиотеки. Если вы добавите путь к библиотеке в ваш список включений, вы должны быть готовы.

Ошибка "Нет такого файла или каталога" является ошибкой препроцессора. Это говорит вам, что включаемый файл не может быть найден в пути включаемого файла. Ваша IDE будет иметь возможность указать путь включения.

Если вы используете make, тогда вы захотите использовать опцию -I.

Если вы используете CppUTest MakeFileWorker.mk, вам нужно добавить определение переменной окружения CPPUTEST_HOME, которая указывает каталог, в котором вы установили CppUTest.

Надеюсь, это поможет.

Другие вопросы по тегам