在Ubuntu Linux上,我一直按照这里给出的指示使用手动复制头文件和库到
然后我尝试编译以下代码(
使用以下命令
只是为了看到另一个毫无帮助的错误信息:
/usr/include
和/usr/lib
来安装gtest
。然后我尝试编译以下代码(
test1.cpp
):#include <gtest/gtest.h>
TEST(MathTest, TwoPlusTwoEqualsFour) {
EXPECT_EQ(2 + 2, 4);
}
int main(int argc, char **argv) {
::testing::InitGoogleTest( &argc, argv );
return RUN_ALL_TESTS();
}
使用以下命令
g++ -lgtest -lgtest_main -lpthread test1.cpp
只是为了看到另一个毫无帮助的错误信息:
/usr/bin/ld: /tmp/ccQlmghI.o: undefined reference to symbol '_ZN7testing8internal9EqFailureEPKcS2_RKSsS4_b'
/usr/lib/gcc/x86_64-linux-gnu/4.8/../../../../lib/libgtest.so: error adding symbols: DSO missing from command line
collect2: error: ld returned 1 exit status
我该怎么解决这个问题?还是说有其他可以用简单方式使用的单元测试框架,并且有工作示例?
同样的问题已经在这里被问到,但没有答案。
-gtest_main
而不是-lgtest_main
,对吗? - Alex