trinity-devel@lists.pearsoncomputing.net

Message: previous - next
Month: June 2012

Re: [trinity-devel] tdebindings FTBFS on Slackware Current 32-bit

From: "Timothy Pearson" <kb9vqf@...>
Date: Tue, 26 Jun 2012 13:19:38 -0500
>> 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