Hi Alexey,
Thank you for your reply.

Seems like kudu will auto use devtoolset by script
build-support/enable_devtoolset.sh
,I will try to use impala toolchain to compile it.
And I try to remove call of kudu::client::GetShortVersionString() in impala
source ,and its successful startup with custom kudu library . Maybe these
problems just break  symbols which argument  with  STL type(std::string)  ?


WY


Alexey Serbin <aser...@cloudera.com> 于2022年9月20日周二 05:21写道:

> Hi,
>
> Did you enable the devtoolset while building the Kudu client?  I guess you
> did,
> so according to the demangled symbols there is
> kudu::client::GetShortVersionString()
> in libkudu_client, but Impala
> wants kudu::client::GetShortVersionString[abi:cxx11]().
>
> I guess the issue is the difference in how things are built in Kudu and
> Impala's toolchain.
> Kudu is built to target the native libstdc++ on RHEL/CentOS 7, but it
> seems Impala
> is compiled with libc++ ABI.  You might try to compile Kudu without
> enabling the devtoolset,
> using the same C++ compiler that impala uses in its toolchain.
>
>
> Kind regards,
>
> Alexey
>
> On Mon, Sep 19, 2022 at 3:59 AM Hollow D.M. <plasme...@gmail.com> wrote:
>
>> Hi team,
>> I build Kudu 1.16.0 in centos 7 , use
>> https://kudu.apache.org/docs/installation.html#rhel_from_source , and
>> get library libkudu_client.so.0.1.0 . Then i put it to my impalad server
>> (also compile in centos7 use
>> https://cwiki.apache.org/confluence/display/IMPALA/Building+Impala) .
>> But i get error while i starting service :
>>
>> ./impalad: symbol lookup error: ./impalad: undefined symbol:
>> _ZN4kudu6client21GetShortVersionStringB5cxx11Ev
>>
>> Is something wrong in my toolchain?
>>
>> Thanks & Regards,
>> WY
>>
>>
>> btw  this is result of objdump for libkudu_client.so.0.1.0 which i build:
>>  objdump -x libkudu_client.so.0.1.0 |grep GetShortVersionString
>> 00000000000c5650 g     F .text 000000000000001b
>>  _ZN4kudu6client21GetShortVersionStringEv
>>
>

Reply via email to