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) ... ...
*** Bug 197594 has been marked as a duplicate of this bug. ***
These are all in the three libraries from speech_tools (libestbase, libestools, libeststring). Will investigate further.
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.)
See bug #232105 for in-progress updated packages which address this issue.
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.)
Oh. Linking with -lncurses works in all cases. Never mind. :)
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.