Bug 198190

Summary: ldd -r reports undefined symbols
Product: [Fedora] Fedora Reporter: Karsten Hopp <karsten>
Component: festivalAssignee: Matthew Miller <mattdm>
Status: CLOSED RAWHIDE QA Contact:
Severity: medium Docs Contact:
Priority: medium    
Version: rawhideCC: mattdm
Target Milestone: ---   
Target Release: ---   
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: 1.96-0.11 Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2007-03-20 19:01:24 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On: 232105    
Bug Blocks: 198485    

Description Karsten Hopp 2006-07-10 13:23:02 UTC
Note: ldd can't handle dlopen'ed dependent libraries and these unresolved symbols
might be resolved by those. But this needs to be checked.
Reproducer: rpm -ql <packagename>| grep lib.*so | xargs ldd -r


festival-devel-1.95-5.2
undefined symbol: _ZSt4cerr     (/usr/lib/libeststring.so.1.2)
undefined symbol: __gxx_personality_v0  (/usr/lib/libeststring.so.1.2)
undefined symbol: _ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc       (/usr/lib/libeststring.so.1.2)
undefined symbol: _ZNSolsEt     (/usr/lib/libeststring.so.1.2)
undefined symbol: _ZNSolsEi     (/usr/lib/libeststring.so.1.2)
undefined symbol: _ZNSt8ios_base4InitC1Ev       (/usr/lib/libeststring.so.1.2)
undefined symbol: __cxa_guard_release   (/usr/lib/libeststring.so.1.2)
undefined symbol: _ZNSt8ios_base4InitD1Ev       (/usr/lib/libeststring.so.1.2)
undefined symbol: __cxa_guard_acquire   (/usr/lib/libeststring.so.1.2)
...
...

Comment 1 Matthew Miller 2007-03-12 17:28:11 UTC
*** Bug 197594 has been marked as a duplicate of this bug. ***

Comment 2 Matthew Miller 2007-03-12 17:30:25 UTC
These are all in the three libraries from speech_tools (libestbase, libestools,
libeststring). Will investigate further.

Comment 3 Matthew Miller 2007-03-13 20:56:22 UTC
Needs -lm, -ltinfo (from ncurses), and (since we're now building the esd module)
-lesd.

And, also, estools needs estbase.

But that's not the big one. All those nasty underscored symbols are because the
makefile inexplicably defines CXX to be gcc except on Mac OS Darwin, where it's
(duh) set to g++. So, set it to g++ and we're good.

(My in-progress updated package does this. Stay tuned.)


Comment 4 Matthew Miller 2007-03-13 21:20:32 UTC
See bug #232105 for in-progress updated packages which address this issue.

Comment 5 Matthew Miller 2007-03-18 00:24:46 UTC
Actually, I have a question about this. libtinfo seems to be in Fedora rawhide
ncurses only; before that, the symbols are just in libcurses. Is there a good
way to tell automatically what's needed? (Preferably without fancy checks;
festival's configure/build system is somewhat twisted.)

Comment 6 Matthew Miller 2007-03-18 17:20:29 UTC
Oh. Linking with -lncurses works in all cases. Never mind. :)

Comment 7 Matthew Miller 2007-03-20 19:01:24 UTC
This issue should be resolved by the release of festival-1.96-0.11, now in the
development tree. (See bug #232105 for details.)

Please reopen if there's still a problem. Thanks.