Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 17894 - fltk doesn't link against libstdc++
Summary: fltk doesn't link against libstdc++
Status: RESOLVED DUPLICATE of bug 15572
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: [OLD] Library (show other bugs)
Hardware: x86 Linux
: High normal (vote)
Assignee: Philip Walls (RETIRED)
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2003-03-20 16:19 UTC by Jeremy Huddleston (RETIRED)
Modified: 2005-07-17 13:06 UTC (History)
0 users

See Also:
Package list:
Runtime testing required: ---


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Jeremy Huddleston (RETIRED) gentoo-dev 2003-03-20 16:19:19 UTC
I did an 'emerge alsamixergui', and it depends on 'fltk'.  alsamixergui failed
its configure step on "checking for fl_numericsort in -lfltk", so I looked at
the config.log and found this:

configure:1474: checking for fl_numericsort in -lfltk
configure:1493: gcc -o conftest -march=pentium3 -O3 -pipe -fomit-frame-pointer
-I/usr/include/fltk-1.1 -L/usr/lib/fltk-1.1 conftest.c -lfltk   1>&5
/usr/lib/fltk-1.1/libfltk.so: undefined reference to `operator new[](unsigned)'
/usr/lib/fltk-1.1/libfltk.so: undefined reference to `vtable for
__cxxabiv1::__si_class_type_info'
/usr/lib/fltk-1.1/libfltk.so: undefined reference to `operator delete(void*)'
/usr/lib/fltk-1.1/libfltk.so: undefined reference to `__cxa_pure_virtual'
/usr/lib/fltk-1.1/libfltk.so: undefined reference to `vtable for
__cxxabiv1::__class_type_info'
/usr/lib/fltk-1.1/libfltk.so: undefined reference to `operator delete[](void*)'
/usr/lib/fltk-1.1/libfltk.so: undefined reference to `operator new(unsigned)'
collect2: ld returned 1 exit status
configure: failed program was:
#line 1482 "configure"
#include "confdefs.h"
/* Override any gcc2 internal prototype to avoid an error.  */
/* We use char because int might match the return type of a gcc2
    builtin and then its argument prototype would still apply.  */
char fl_numericsort();

int main() {
fl_numericsort()
; return 0; }

It appears as if libfltk.so isn't linking against libstdc++ (and a quick ldd
verifies this)

I 'emerge sync'd about 2 hours ago.

Reproducible: Always
Steps to Reproduce:
1. emerge fltk
2. ldd /usr/lib/fltk-1.1/libfltk.so
3. readelf -s /usr/lib/fltk-1.1/libfltk.so | grep 'operator delete'

Actual Results:  
We see that fltk isn't linking against a required library.  My guess is that it
is doing a 'gcc -shared ...' rather than 'g++ -shared ...'

Expected Results:  
In the mean time, software that requires it can be linked using g++ or ld
-lstdc++ as a work around, but this dependency should appear in libfltk.so
Comment 1 Alastair Tse (RETIRED) gentoo-dev 2003-03-30 21:46:55 UTC
thanks for the detailed analysis. i think you were spot on about that. i've put in a workaround for this in fltk-1.1.2-r1

*** This bug has been marked as a duplicate of 15572 ***