mbue
mbue

Reputation: 1632

Can't get googletest running with ubuntu (linker errors)

I've built googletest using make under linux, the resulting files are libgtest.a libgtest_main.a.

I referenced the include files from my application and added the following lib dependencies (in the given order):

-lgtest
-lpthread

However I get the following two linker errors when I try to compile:

more undefined references to `testing::internal::EqFailure(char const*, char const*, testing::internal::String const&, testing::internal::String const&, bool)

undefined reference to `testing::internal::String::ShowCStringQuoted(char const*)

From what I've seen within the googletest source, the EqFailure function is directly implemented within gtest.cc. I don't understand why I should get a linker error here, the other definitions from googletest could obviously also be found (if I remove -lgtest, I get alot of more linker errors).

What am I missing? Thank you in advance.

Upvotes: 2

Views: 2219

Answers (1)

Michael Medin
Michael Medin

Reputation: 351

Make sure you do not accidentally mix your own gtest and the one shipped with ubuntu.

I use cmake to build and got the same errors due to cmake opting for /usr/include over my own custom built version (which is what I linked with).

Upvotes: 2

Related Questions