[Help-gnutls] Re: duplicate symbols complaint on Mac OS X 10.5.2

Ludovic Courtès ludo at gnu.org
Thu Mar 27 15:00:42 CET 2008


Hi,

Sorry for taking so long.  I've browsed various mailing list archives
about the `G_INLINE_FUNC' problem (which is similar), but didn't find
any satisfactory explanation.  The workaround that's been applied boils
down to an `#ifdef __APPLE__' that avoids "extern inline" when on
Mac OS X.

The glib bug is http://bugzilla.gnome.org/show_bug.cgi?id=492152 .
The patch:
http://trac.macports.org/projects/macports/attachment/ticket/13006/glib2-inline.patch .

So, let's try to get a better understanding of what's going on...

David Reiser <dbreiser at gmail.com> writes:

> On Mar 18, 2008, at 4:01 PM, Ludovic Courtès wrote:
>> David Reiser <dbreiser at gmail.com> writes:
>>> On Mar 18, 2008, at 5:32 AM, Ludovic Courtès wrote:
>>>> Can you try compiling something like:
>>>>
>>>> #include <gmp.h>
>>>>
>>>> void
>>>> foo (mpz_t a, mpz_t b)
>>>> {
>>>>   mpz_abs (a, b);
>>>> }
>>>>
>>>> And then run:
>>>>
>>>> $ nm -g the-file.o | grep mpz_abs

>> So, assuming you copied the above code fragment in `the-file.c', then
>> you just need to compile it with:
>>
>>  $ gcc -c the-file.c

> $ nm -g bar.o | grep mpz_abs
>          U ___gmpz_abs

Can you try the same, but compiling with "gcc -O2" this time?  This
should force function inlining.

Thanks,
Ludovic.






More information about the Gnutls-help mailing list