3

我正在使用 Atmel Studio 6.1.2 SP2。我正在为我们的嵌入式系统项目设置 CppUTest。我为 CppUTest 框架创建了一个静态 CPP 库,在稍作改动后成功编译。现在我将这个库包含到一个测试项目中。一个 C++ 应用程序项目。

在此处输入图像描述

我现在面临的问题是,即使智能感知自动完成我的包含,这意味着它可以看到库在哪里,我在编译时收到“没有 chuch 文件或目录”错误。

在 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 的步骤操作,这是教程

4

2 回答 2

1

添加库仅告诉链接器该文件可用于与目标代码的其余部分链接。似乎缺少的是告诉编译器在哪里可以找到库的头文件。如果您将库路径添加到包含列表中,您应该很高兴。

于 2013-11-04T15:02:43.373 回答
1

“没有这样的文件或目录”错误是预处理器错误。它告诉您在包含文件路径中找不到包含文件。您的 IDE 将有一种方法来指定包含路径。

如果您正在使用 make,那么您将需要使用 -I 选项。

如果您使用 CppUTest 的 MakeFileWorker.mk,您需要添加定义一个环境变量 CPPUTEST_HOME,它指定您安装 CppUTest 的目录。

我希望这会有所帮助。

于 2014-05-15T22:53:22.717 回答