On 16.08.2011 14:54, MacArthur, Ian (SELEX GALILEO, UK) wrote:

>>> 2. If compiled with gcc version 4.5.0 with the default
>> configure, any executable would not run, complaining about
>> missing gcc or g++
>>> runtime dlls. This is easily fixed with
>>>
>>> LDFLAGS='-static-libgcc -static-libstdc++' ./configure
>>>
>>> but is annoying nevertheless.
>>
>> Again, is this also the case in 1.3? I have not really
>> changed any Makefiles (I think), and definitely not configure.in.
>
> This is a gcc/mingw thing - see Albrecht's post.

Yep, a gcc thing - to be precise. I think that this is also the case for
all other platforms, including Linux and (maybe) also OS X.

> If we stick with older gcc versions, this problem does not appear, but
> it will affect "everyone", not just fltk, when moving up to gcc 4.5.x at
> some point.

Correct.

> If I understand the issue (I really don't) then if we don't want to
> propagate exceptions to DLL's, maybe we just don't care and can link
> static, and I think that's pretty much what the gcc 3.x mingw does...
> But...

I don't fully understand the issue either. As far as I read, it has to
do with propagating exceptions *across* dll "boundaries". This problem
is more or less non-existent if we look at our own tools like fluid and
the test executables, since we don't throw exceptions. Therefore we could
link static, and that's it.

However, if we link the FLTK dll's, I guess this might be different, if
the end user who uses this FLTK dll uses exceptions somewhere... But then
I really don't know.

At least we'd need a feature test whether a particular gcc / binutils
version accepts the options "-static-libgcc -static-libstdc++". Otherwise
we'd break all builds except for gcc 4.5++, AFAICT. :-(

Albrecht
_______________________________________________
fltk-dev mailing list
[email protected]
http://lists.easysw.com/mailman/listinfo/fltk-dev

Reply via email to