Bhavana
Bhavana

Reputation: 1

Symbol error with GCC-4.4.2 libstdc++.so.6 library

I am building GCC-4.4.2 ( open embedded recipe using bitbake version-1.8 ) for an x86 based system.

The configure options are as under:

"--enable-libssp --disable-bootstrap --disable-libgomp --disable-libmudflap"

It builds successfully after some minor changes and libstdc++.so.6.0.13 library is getting created.

My aim is to run Citrix receiver on an x86 based target. For this, I run storebrowse as follows:

./usr/lib/ICAClient/storebrowse

But I get the following errors.

./storebrowse: /usr/lib/libxml2.so.2: no version information available (required by ./storebrowse)
./storebrowse: relocation error: ./storebrowse: symbol _ZTISt15basic_streambufIwSt11char_traitsIwEE, version GLIBCXX_3.4 not defined in file libstdc++.so.6 with link time reference.

libxml2 error can be resolved by deleting and creating a new symbolic link to libxml. I am unable to resolve the symbol error (_ZTISt15basic_streambufIwSt11char_traitsIwEE). I am compiling using default gcc_4.4.2.bb recipe.

Do I need to make any changes in configure options..?

Upvotes: 0

Views: 601

Answers (1)

John Zwinck
John Zwinck

Reputation: 249153

It looks like your executable is loading the system's (older) libstdc++. To fix this, either configure GCC with --enable-rpath or explicitly add RPATH to your call to g++ with -Wl,-rpath=/path/to/your/gcc/lib, or run your executable like this:

LD_LIBRARY_PATH=/path/to/your/gcc/lib ./usr/lib/ICAClient/storebrowse

I wrote those three possible solutions in order of my personal preference. :)

This page may be of some interest: https://gcc.gnu.org/onlinedocs/libstdc++/manual/abi.html

Upvotes: 1

Related Questions