繁体   English   中英

Eclipse找不到UnitTest ++库

[英]Eclipse Cannot find the UnitTest++ library

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

我遵循了Project-> Properties-> C / C ++ Build-> Tool Settings,并在GCC C ++编译器(包括选项)中包含了完整路径“ C:\\ Users \\ XXX \\ workspace \\ unittest-cpp-master \\ UnitTest ++”和“ MinGW C ++链接器中的C:\\ Users \\ XXX \\ workspace \\ unittest-cpp-master \\ UnitTest ++ \\ UnitTest ++。h(“库”选项)

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

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

关于如何解决它的任何建议? TIA

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

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

如果您使用的是类Unix系统,则对应于链接器选项-lfoo库将称为libfoo.alibfoo.so ;如果您使用Windows, foo.lib称为libfoo.afoo.libfoo.dll

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

您犯了一个错误,也许犯了两个错误:

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

-lUnitTest++

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

默认情况下,链接器将在多个默认目录中搜索库,具体取决于类Unix或Windows系统。 如果您尚未在这些位置之一安装UnitTest ++库,则还需要告诉链接程序应在其中搜索该库的目录名称。 因此,举例来说,如果您的UnitTest ++库为:

C:\Users\XXX\workspace\unittest-cpp-master\lib\UnitTest++.a

那么您需要在IDE中进行进一步的设置。 导航到项目的“项目” 属性 -> C ++ Build- > 设置 -> GCC C ++链接器 -> -> 库搜索路径 ,然后添加C:\\Users\\XXX\\workspace\\unittest-cpp-master\\UnitTest++ 此设置将生成命令行链接器选项:

-LC:\Users\XXX\workspace\unittest-cpp-master\lib

当您构建时。

如果使用IDE,比如Eclipse的一个控制GNU编译工具,而不基本理解命令行工具是如何工作的,他们就再操作什么类型的文件恐怕你一定会犯的失误是这样的: 这里是非常迅捷治愈那。 如果使用MinGW GCC会使您误入歧途,请参阅MinGW文档和/或GCC文档。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM