Stefan Lang
12/5/2004 12:02:00 PM
Am Sonntag, 5. Dezember 2004 09:19 schrieb Joel VanderWerf:
> Martin Kahlert wrote:
> > Hi!
> >
> > i am not able to compile FXRuby since about 1 month with the latest
> > snapshots. I tried the old (1.0.29 with the latest fox-1.0.53) and the
> > new API (1.2.2 and fox-1.2.11).
...
> > FXRuby.cpp:64: error: declaration of C function
> > `void st_foreach(st_table*, int (*)(char*, char*, char*), char*)'
> > conflicts with
> > /SW/lib/ruby/1.8/i686-linux/intern.h:249: error:
> > previous declaration
> > `void st_foreach(st_table*, int (*)(), long unsigned int)' here
...
> Did anyone ever find a way to fix this? (I'm seeing it with FXRuby-1.2.2
> and fox-1.2.11, linux, gcc 3.2.2, ruby 1.8.2 (2004-11-18) [i686-linux].)
I had the same problem. FXRuby doesn't work with Ruby 1.8 preview 3.
Use Ruby 1.8 preview 2 instead.
Here is what Lyle Johnson wrote as answer to my post on Fri, 3 Dec 2004:
(Subject was: "FXRuby-1.2.2 fails to compile")
> As Kevin noted, this is a known problem that I plan to resolve in the
> next release. (It will presumably break builds for FXRuby 1.0.29 as
> well.)
>
> The declaration for Ruby's st_foreach() function changed in the latest
> preview release for Ruby 1.8.2 and that is the source of the breakage.
> To be fair, st_foreach() isn't really a part of the "public" C API for
> Ruby and so I shouldn't have been relying on its stability. Live and
> learn. ;)
--
Stefan