[ 
https://issues.apache.org/jira/browse/HBASE-18901?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16203939#comment-16203939
 ] 

Josh Elser commented on HBASE-18901:
------------------------------------

Some problems I'm seeing are related to the {{CXX11_ABI=0}} option in 
{{CFLAGS}}/{{CXXFLAGS}}. I ran into this using the system-installed glog 
package. e.g.

{noformat}
/usr/include/glog/logging.h:672: undefined reference to 
`google::base::CheckOpMessageBuilder::NewString()'
./.libs/libfollybase.a(Conv.o): In function `std::string* 
google::MakeCheckOpString<unsigned long, unsigned long>(unsigned long const&, 
unsigned long const&, char const*)':
/usr/include/glog/logging.h:672: undefined reference to 
`google::base::CheckOpMessageBuilder::NewString()'
./.libs/libfollybase.a(Format.o): In function `std::string* 
google::MakeCheckOpString<int, int>(int const&, int const&, char const*)':
/usr/include/glog/logging.h:672: undefined reference to 
`google::base::CheckOpMessageBuilder::NewString()'
{noformat}

Looking at the error message from above around protobuf. I wonder if that isn't 
also the same problem:

{noformat}
libhbaseclient.a(ClusterId.pb.cc.o):(.rodata._ZTVN5hbase2pb9ClusterIdE[_ZTVN5hbase2pb9ClusterIdE]+0x58):
 undefined reference to 
`google::protobuf::Message::InitializationErrorString[abi:cxx11]() const'
{noformat}

We're configuring things to use the old ABI (which would affect std::string and 
std::list). Given the troubleshooting section on 
https://gcc.gnu.org/onlinedocs/libstdc++/manual/using_dual_abi.html, we just 
need to make sure that we're consistently using the new or old ABI (and also 
knowing which the libraries on the system we're linking against are using!)

> Support build with CMake
> ------------------------
>
>                 Key: HBASE-18901
>                 URL: https://issues.apache.org/jira/browse/HBASE-18901
>             Project: HBase
>          Issue Type: Sub-task
>            Reporter: Josh Elser
>            Assignee: marco polo
>              Labels: C++
>             Fix For: HBASE-14850
>
>         Attachments: HBASE-18901.v1.HBASE-14850.patch, 
> HBASE-18901.v2.HBASE-14850.patch, HBASE-18901.v3.HBASE-14850.patch, 
> HBASE-18901.v4.HBASE-14850.patch
>
>
> I've co-opted some help from folks in trying to support CMake as the build 
> tool instead of Buck.
> They have something working, but need to consolidate the patch. Filing an 
> issue for them to put a patch on.
> FYI [~enis], [~tedyu]



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)

Reply via email to