您的位置:首页 > 编程语言 > Go语言

googletest链接错误“ _regcompA”解决

2016-01-08 23:04 387 查看
Undefined symbols for architecture x86_64:

  "_regcompA", referenced from:

      testing::internal::RE::Init(char const*) in libgoogle_gtest.a(gtest-port.cc.o)

  "_regexecA", referenced from:

      testing::internal::RE::FullMatch(char const*, testing::internal::RE const&) in libgoogle_gtest.a(gtest-port.cc.o)

      testing::internal::RE::PartialMatch(char const*, testing::internal::RE const&) in libgoogle_gtest.a(gtest-port.cc.o)

  "_regfreeA", referenced from:

      testing::internal::RE::~RE() in libgoogle_gtest.a(gtest-port.cc.o)
ld: symbol(s) not found for architecture x86_64

最近使用rocksdb的时候发现这个问题,一时犯懒,没去解决,反正不用test,结果今天编译googletest的时候有遇到这个问题,回过头来看一下这个问题,原来就是googletest的编译问题。

这时候我才意识到采坑了。非说找不到,但是查了下,这是系统库啊,没道理啊,拉下来googletest的源码,然后跳转了一下,发现跳转到了boost目录下的同名文件。额,这基本上就说明了include错误了文件了
9c66


于是修改C_INCLUDE_PATH和CPLUS_INCLUDE_PATH   把boost目录去掉,如果没有设置过这两个,可以设置一下。再编译,就关联到正确的系统文件,搞定。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  c++ googletest