http://www.perlmonks.org?node_id=1118917

salva has asked for the wisdom of the Perl Monks concerning the following question:

I have this bug report for Math::Int128.

The reporter is trying to use Math::Int128 C API but his module dies because of some unresolved symbol. It seems to me that the issue is related to the compilation/linking of the client module.

I don't have a Mac and my knowledge of OS/X is quite limited, so I would really appreciate if somebody else could take a look at that.

Replies are listed 'Best First'.
Re: Math::Int128 issue on OS/X
by mojotoad (Monsignor) on Mar 05, 2015 at 22:24 UTC
    It looks like the compiler is failing this conditional in perl_math_int128.c:
    #if ((LONGSIZE >= 8) && (__GNUC__ > 4 || (__GNUC__ == 4 && __GNUC_MINO +R__ >= 4)))
    __GNUC__ is 4 and __GNUC_MINOR__ is 2. However, Math::Int128 itself compiles and tests successfully. Removing the conditional above fixes the problem but I'd like to understand a bit more why it's there in the first place.

    edit: just to be clear, the compiler in question is clang

    Matt