That looks like the version of libstdc++ with which you compiled the extension is not the same as the version available when you're running it. That symbol is part of the typeinfo resolver in libstdc++.

A couple things to try:

Make sure that your libstdc++ and libstdc++-dev packages are up to date, and are the same version; same thing with your gcc and g++ packages.

`grep _ZTVN10__cxxabiv120__si_class_type_infoE /usr/lib/libstdc++*` to see which versions of libstdc++ you have export that symbol, then make sure that one of the returned versions is linked into the extension with `ldd /usr/lib/php/extensions/no-debug-non-zts-20060613/ thrift_protocol.so`.

If you are loading any other php extensions written in c++, they could be bringing in other versions of libstdc++ which are conflicting with the one that thrift_protocol needs. Try loading only the thrift_protocol extension, if all of the above fails.

-------- Original Message --------
Subject:        Thrift PHP Extension Bug?
Date:   Mon, 25 Aug 2008 14:55:44 -0700
From:   Chris Goffinet <[EMAIL PROTECTED]>
Reply-To:       <[email protected]>
To:     <[email protected]>



I am running into a strange issue when trying to compile the thrift
PHP extension for Debian Etch. I tried originally with the Debian PHP
5.2 binaries, and then tried from source (5.2.6) Both times I get:

PHP Warning:  PHP Startup: Unable to load dynamic library '/usr/lib/
php/extensions/no-debug-non-zts-20060613/thrift_protocol.so' - /usr/
lib/php/extensions/no-debug-non-zts-20060613/thrift_protocol.so:
undefined symbol: _ZTVN10__cxxabiv120__si_class_type_infoE in Unknown
on line 0

Any ideas?

--
Chris Goffinet
MyBlogLog Senior Performance Engineer

Yahoo!
San Francisco, CA
United States


Reply via email to