簡體   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