> Was a Linux binary for Ruby 1.7 made available? I'm trying to install from
> source, and get this error when running install.rb setup:
> 
> install.rb: entering setup phase...
> ---> lib
> ---> lib/fox
> <--- lib/fox
> <--- lib
> ---> ext
> ---> ext/fox
> make
> install.rb:397: warning: Unsecure world writeable dir
> /usr/local/development , mode 040777
> g++ -fPIC -g -O2 -O0 -Iinclude -I. -I/usr/local/lib/ruby/1.7/i586-linux -I/
> usr/local/development/ruby-mods/FXRuby-1.0.10/ext/fox -DHAVE_SYS_TIME_H -DH
> AVE_SIGNAL_H   -I/usr/local/include -I/usr/local/include/fox -c
> core_wrap.cpp
> In file included from /usr/include/math.h:63,
>                  from /usr/local/include/fox/fx.h:31,
>                  from include/FXRbCommon.h:55,
>                  from core_wrap.cpp:384:
> /usr/include/bits/mathcalls.h:86: declaration of `double acosh (double)
> throw ()' throws different exceptions
> /usr/local/lib/ruby/1.7/i586-linux/missing.h:15: than previous declaration
> `double acosh (double)'
> /usr/include/bits/mathcalls.h:88: declaration of `double asinh (double)
> throw ()' throws different exceptions
> /usr/local/lib/ruby/1.7/i586-linux/missing.h:16: than previous declaration
> `double asinh (double)'
> /usr/include/bits/mathcalls.h:90: declaration of `double atanh (double)
> throw ()' throws different exceptions
> /usr/local/lib/ruby/1.7/i586-linux/missing.h:17: than previous declaration
> `double atanh (double)'
> /usr/include/bits/mathcalls.h:150: declaration of `double hypot
> (double, double) throw ()' throws different exceptions
> /usr/local/lib/ruby/1.7/i586-linux/missing.h:43: than previous declaration
> `double hypot (double,
> double)'
> make: *** [core_wrap.o] Error 1
> setup failed
> 'system make' failed
> try 'ruby install.rb --help' for usage
> 
> 
> I'm using ruby 1.7.2 (2002-05-16) [i586-linux] on Mandrake 8.2, with
> fox-1.0.11 installed from source.
> Is there a way around this error?

The problems you're seeing suggest to me that something's broken with 
your Ruby installation.

For some reason, the compiler is seeing the declarations of acosh(), 
asinh(), atanh() and hypot() in Ruby's "missing.h" header file. and 
(correctly) reporting that they're inconsistent with the declarations 
for those functions from the standard "math.h" include file. But when 
you configured and built Ruby 1.7 from the source code, it *should* have 
generated a "config.h" include file that defines the symbols HAVE_ACOSH 
and HAVE_HYPOT. The presence of those preprocessor symbols would in turn 
direct the compiler to skip over the offending declarations of asinh() 
and friends in Ruby's "missing.h".

OK.

What I would try in this situation is to reconfigure and rebuild Ruby 
1.7. That means changing to the source directory and doing:

	make distclean
	./autoconf
	./configure
	make
	make install

The first three steps are particularly important. You might want to 
check the contents of the config.h include file after running 
"configure" to confirm that HAVE_ACOSH and HAVE_HYPOT are indeed 
defined; they should be on a Linux system.

After updating the code like this, FXRuby should build cleanly against 
Ruby 1.7; I'm doing this on a fairly regular basis against the latest 
CVS sources for Ruby. But if you're still stuck after updating your 
Ruby, let me know and I can conjure up an RPM.

Hope this helps,

Lyle