The failure:
In file included from /usr/include/ruby-1.9.1/ruby.h:32:0,
from Qt.cpp:49:
/usr/include/ruby-1.9.1/ruby/ruby.h:24:25: fatal error:
ruby/config.h: No such file or directory compilation terminated.
make[5]: *** [Qt.lo] Error 1
The oddity is no such failure on Slackware 13.1 or 13.37, 32
or 64 bit. config.h is installed in the same place on all
systems.
Any ideas?
I'm finding this build failure confusing. Hopefully somebody can shed some
light.
tdebindings builds without failure on Slackware 13.1 and 13.37, but fails
on Slackware Current (soon to be Slackware 14). The problem is not gcc
4.7.1 related because this failure started before Current updated to 4.7.1
(only yesterday). I previously built tdebindings on Current a few weeks
ago. What changed between then and now? Ruby was updated from 1.9.1 to
1.9.3 and that is the only related change I notice.
That is what the failure message indicates too.
In tdebindings/qtruby/rubylib/qtruby/Qt.cpp:
#include <ruby.h>
In ruby-1.9.1, ruby.h:
#include "ruby/config.h"
In ruby-1.9.3, ruby.h:
#include "ruby/config.h"
For both, config.h is installed at:
/usr/include/ruby-1.9.1/i486-linux/ruby/config.h
I don't know why ruby 1.9.3 uses ruby-1.9.1 as a parent directory rather
than ruby-1.9.3. Could that be the problem?
How do I work-around this failure?
Darrell
That is one of the strangest include file directory trees I have seen!
I (and the TDE compilation process) would expect to see:
/usr/include/i486-linux/ruby-1.9.1/
or
/usr/include/ruby-1.9.1/
or
/usr/include/
but not /usr/include/ruby-1.9.1/i486-linux/. You may need to pass
/usr/include/ruby-1.9.1/i486-linux/ as an extra include directory to the
build process.
Tim