首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Eclipse找不到UnitTest++库

Eclipse找不到UnitTest++库
EN

Stack Overflow用户
提问于 2015-07-16 02:02:46
回答 1查看 475关注 0票数 0

我一直在尝试使用UnitTest++进行单元测试。我正在使用。

我遵循了项目->属性->C/ C++构建->工具设置,并在GCC "C:\Users\XXX\workspace\unittest-cpp-master\UnitTest++“编译器(包括选项)和"C:\Users\XXX\workspace\unittest-cpp-master\UnitTest++\UnitTest++.h”in MinGW C++链接器(库选项)中包括了完整路径C++

当我构建源代码时,它会给出错误。

找不到-lC:\Users\XXX\workspace\unittest-cpp-master\UnitTest++\UnitTest++.h

对如何修复它有什么建议吗?提亚

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-07-17 19:09:17

您正在看到一个链接器错误,它告诉您链接器无法找到与命令行链接器选项相对应的库:

代码语言:javascript
复制
-lC:\Users\XXX\workspace\unittest-cpp-master\UnitTest++\UnitTest++.h

与链接器选项-lfoo相对应的库将调用libfoo.alibfoo.so,如果您在类似unix的系统中,则调用libfoo.afoo.libfoo.dll (如果您在Windows上)。

当然,如果您将C:\Users\XXX\workspace\unittest-cpp-master\UnitTest++\UnitTest++.h替换为foo,则所有这些可能性都不会产生计算机上存在的任何文件的名称。

你犯了一个或两个错误:

您已经将头文件C:\Users\XXX\workspace\unittest-cpp-master\UnitTest++\UnitTest++.h的名称添加为链接库。头文件对链接器没有任何意义。链接库是包含编译代码的二进制文件,链接器可以将其与其他二进制文件组合以生成程序。您需要链接的库是UnitTest++。此设置将生成命令行链接器选项:

代码语言:javascript
复制
-lUnitTest++

当您构建时,链接器将在它应该搜索库的目录中搜索匹配的库文件。

默认情况下,链接器将在几个默认目录中搜索库,这取决于您的类unix或Windows系统。如果您还没有在其中一个位置安装您的UnitTest++库,那么还需要告诉链接器它应该在哪里搜索这个库的目录的名称。因此,例如,如果您的UnitTest++库是:

代码语言:javascript
复制
C:\Users\XXX\workspace\unittest-cpp-master\lib\UnitTest++.a

然后您需要在IDE中做进一步的设置。导航到项目的Properties -> C++ Build -> Settings -> C++ Linker -> LibraryE 222 -> E 123库搜索路径e 224,并添加C:\Users\XXX\workspace\unittest-cpp-master\UnitTest++。此设置将生成命令行链接器选项:

代码语言:javascript
复制
-LC:\Users\XXX\workspace\unittest-cpp-master\lib

当你建造的时候。

如果您使用IDE这样的Eclipse来控制GNU构建工具,而根本不了解命令行工具是如何工作的以及它们操作的文件类型,那么恐怕您肯定会犯这样的错误:这是一种非常快速的治疗方法。,如果它导致您误入歧途地与MinGW GCC一起工作,那么请参阅MinGW文档和/或GCC文献

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/31444213

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档