The ebuild for sdl-gui is broken (no doubt the reason why it is masked). I'm not sure if this qualifies as a satisfactory fix, but it works: all you need to do is add the following as the first line in the src_compile section of sdl-gui-0.10.3.ebuild:
My application uses SDL_gui and this fix has worked well for me. However, I'm sure with a little further digging someone could fix the SDL_gui code so that it doesn't need this hack.
i dont see how sdl-gui is masked other than it's ~x86 ...
oh, and it compiles just fine over here ... could you provide some `emerge info` ?
I thought being ~x86 meant that it was masked. Not "hard-masked", which I understand is a different thing.
It always compiles, but the problem is that when you try to link against it you get errors about undefined symbols new and delete etc. This is what made me try to link SDL_gui against libstdc++ at build time, and it seems to work.
This problem affects several of my machines here, one of which is running Debian. However, it does not appear on two other systems running older versions of gcc/glibc.
I'll attach the emerge info output from one of my machines along with part of config.log when trying to build my application (which attempts to link a test program against SDL_gui and fails). I'm confident that building any application that attempts to link against SDL_gui will result in the same problem.
Created attachment 22766 [details]
Output from "emerge info"
Created attachment 22767 [details]
Excerpt from config.log - trying to link test program against broken SDL_gui
to be honest, i think this is more of a non-bug ;)
SDL_gui is C++ ... thus using gcc to compile c++ sources is incorrect ...
if you change your test program to use g++ instead of gcc, does the linker errors go away ?
Oops... You're right. I just fixed the autoconf script to use C++ and it now works (why didn't I see that earlier... gah! Sorry to waste your time.)
However, I believe SDL_gui is meant to be linked against C programs as well - at least a C API is provided. Maybe you're supposed to also link your C program against libstdc++ if you want to use SDL_gui.
hmm, i'll double check on the C api thing
just thought about it again and the answer is, it's not a bug for the same reason ;)
the SDL_gui.h has this:
so if you get those linker errors it's cause you get C++ code in that C file of yours ;)