Some programs which link against gmp require __gmpn_clz_tab. This patch removes the #ifdef surrounding (__gmpn)_clz_tab.
Created attachment 170318 [details] patch to fix clz_tab errors
that patch adds an ifdef ... regardless, clz_tab looks like an internal symbol. no external program should be referring to it.
The patch *removes* the ifdef. Anyways, some proprietary programs (most of which were compiled with gcc3) use clz_tab in gmp. An example: Wolfram Mathematica 6. Unlike de-GPLing certain exports in the kernel for ATI drivers to work with -rt, this doesn't create legal and/or licensing issues.
i wonder if you actually read the patch you posted. it uses +, not -. if this is only for binary apps, then i'm inclined to not add it.
Whoops, I messed up the order of the --- and the +++ file. I'm guessing that a gcc3-compiled gmp doesn't hide clz_tab and therefore gcc3-based apps can become dependent on it. With regards to binary apps, wouldn't it be a bit hypocritical to not include this while including libstdc++-v3 ?
no it isnt. libstdc++-v3 does not require custom patches screwing with the internal ABI.
So why then is the gcc3-built gmp ABI so different from the gcc4-built gmp ABI?
The problem that I see is that with gentoo-wiki being down, there's no solution for Gentoo users who want to run Mathematica. Google doesn't help.
i really dont know what ABI differences you're talking about. the public ABI should be the same regardless of the compiler used ... that's the point of an ABI. so if a random binary-only package is the only example you have, and the symbol in question is private, then i dont think this should be added. you could always ask on the gmp lists to make sure something else isnt going on. http://gmplib.org/#MAILINGLISTS