Peter Naulls wrote:


(ffmpeg)
/usr/src/gccsdk/build/ffmpeg/trunk/libavcodec/libavcodec.a(opt.o): In function `av_set_string3':
libavcodec/opt.c:162: undefined reference to `__isnan'
/usr/src/gccsdk/build/ffmpeg/trunk/libavcodec/libavcodec.a(aaccoder.o): In function `search_for_quantizers_anmr':
libavcodec/aaccoder.c:558: undefined reference to `__isinff'
libavcodec/aaccoder.c:568: undefined reference to `__isinff'
libavcodec/aaccoder.c:542: undefined reference to `__isinff'
libavcodec/aaccoder.c:542: undefined reference to `__isinff'
libavcodec/aaccoder.c:568: undefined reference to `__isinff'
/usr/src/gccsdk/build/ffmpeg/trunk/libavcodec/libavcodec.a(ratecontrol.o): In function `get_qscale':
libavcodec/ratecontrol.c:342: undefined reference to `__isnan'
/usr/src/gccsdk/build/ffmpeg/trunk/libavcodec/libavcodec.a(nellymoserenc.o): In function `get_exponent_dynamic':
libavcodec/nellymoserenc.c:234: undefined reference to `__isinff'

So the problem here is to do with symbol visibility.  e.g: in s_isinf:

#include "math.h"
#include "math_private.h"

int
__isinf (double x)
{
        int32_t hx,lx;
        EXTRACT_WORDS(hx,lx,x);
        lx |= (hx & 0x7fffffff) ^ 0x7ff00000;
        lx |= -lx;
        return ~(lx >> 31) & (hx >> 30);
}
hidden_def (__isinf)
weak_alias (__isinf, isinf)
#ifdef NO_LONG_DOUBLE
strong_alias (__isinf, __isinfl)
weak_alias (__isinf, isinfl)
#endif

This is only done in a few of the math files, and I see the SVN comment
from 2006.  I suspect, and John will have to confirm, that this is no
longer correct.  I will change it locally and see if it helpss





_______________________________________________
GCCSDK mailing list [email protected]
Bugzilla: http://www.riscos.info/bugzilla/index.cgi
List Info: http://www.riscos.info/mailman/listinfo/gcc
Main Page: http://www.riscos.info/index.php/GCCSDK

Reply via email to