xforms-development
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [XForms] Duplicate Symbols during compilation under Mac OS X 10.9.2


From: Jens Thoms Toerring
Subject: Re: [XForms] Duplicate Symbols during compilation under Mac OS X 10.9.2
Date: Tue, 25 Mar 2014 15:12:05 +0100
User-agent: Mutt/1.5.21 (2010-09-15)

Hi André,

On Tue, Mar 25, 2014 at 02:17:41PM +0100, André Ludwig wrote:
> I tried to compile xforms-1.2.3 on Mac OS X 10.9.2 with 
> 
> I then had to apply a little fix to circumvent the „ld: unknown option:
> --no-undefined“ error by removing the unknown option: $ find . -name
> 'Makefile*' -type f -exec sed -i '' 's/-Wl,--no-undefined //g' {} \;

I'll keep that in mind and try to remove it.

> But I’m now stuck at a close-to-end step with the error "duplicate symbols 
> for architecture x86_64“ during the linking step:
> $ make
> ****snip****
> duplicate symbol _fli_handled_obj in:
>     .libs/align.o
>     .libs/appwin.o
> ****snip****
> duplicate symbol _fli_handled_parent in:
>     .libs/align.o
>     .libs/xpopup.o

This is quite a bit embarrassing:-( As far as I can see this is
due to the variables 'fli_handled_obj' and 'fli_handled_parent'
being *defined* (and not just declared as externam) in the
flinternal.h header file - thus every .c file including it
gets its own version of these variables. That's, of course,
idiotic and I should have known better...

The quick fix is to remove the definitions (i.e. the two
lines where these variables appear) from flinternal.h and
instead put

extern FL_OBJECT * fli_handled_obj;
extern FL_OBJECT * fli_handled_parent;

somewhere at the start of objects.c (the variables get de-
fined in events.c and are needed also in objects.c but no-
where else).

Thank you for bringing this to my attention, I'll fix it in
the very next release.
                            Best regads, Jens
-- 
  \   Jens Thoms Toerring  ________      address@hidden
   \_______________________________      http://toerring.de



reply via email to

[Prev in Thread] Current Thread [Next in Thread]