Finding ruby.h / problem with rbconfig (LoadError)

Hi all,

is there a generic way to find out where the ruby.h file is located?

Until now I was using something like
ruby -rrbconfig -e "print Config::CONFIG[‘archdir’]

which worked on the systems I have tested (with ruby 1.6.something
preinstalled).

The last check I did was with ruby 1.8.0 (compiled from sources), and I
always get

ruby: No such file to load – rbconfig (LoadError)

Am I doing something wrong here or is this just a ruby bug?

cheers
Oliver

P.S.: my ruby 1.8.0 was configured with
…/configure --prefix=/xxx/local --exec-prefix=/xxx/local/intel-linux
because the filesystem is used by different OS/architectures

···


Oliver Obst 0261 287-2774 101% – how much do you give?
AI Research Group
U Koblenz B219 https://www.uni-koblenz.de/~fruit/about/pgp.html

Am I doing something wrong here or is this just a ruby bug?

your installation is broken

svg% ruby -rrbconfig -e 'puts Config::CONFIG["archdir"]'
/usr/local/lib/ruby/1.8/i686-linux
svg%

svg% ruby -rrbconfig -e 'puts Dir[Config::CONFIG["archdir"]+"/rb*"]'
/usr/local/lib/ruby/1.8/i686-linux/rbconfig.rb
svg%

Guy Decoux

ts wrote:

Am I doing something wrong here or is this just a ruby bug?

your installation is broken

OK, knowing this alone doesn’t help me really much. What I basically did was

  • downloading and unpacking the ruby sources
  • ./configure --prefix=/xxx/local --exec-prefix=/xxx/local/intel-linux
  • make
  • make install

(every step worked with no error)

what’s wrong with that?

cheers
Oliver

···


Oliver Obst 0261 287-2774 101% – how much do you give?
AI Research Group
U Koblenz B219 https://www.uni-koblenz.de/~fruit/about/pgp.html

- ./configure --prefix=/xxx/local --exec-prefix=/xxx/local/intel-linux

[...]

what's wrong with that?

ruby use internally --prefix to locate libraries

Guy Decoux

ts wrote:

  • ./configure --prefix=/xxx/local --exec-prefix=/xxx/local/intel-linux
    […]
    what’s wrong with that?

ruby use internally --prefix to locate libraries

OK, I see, thanks.
The problem is indeed resolvable by adding a symbolic link from
${prefix}/lib/ruby/1.8 to ${exec-prefix}/lib/ruby/1.8.

pkgdatadir would probably be a location more suitable for the .rb files
coming with ruby (instead of pkglibdir), but since I want to check
existing ruby installations (from an autoconf script), I have to live with
the way it is done now.

Anyway it’s a bit surprising :wink: that configuring ruby doesn’t work the way
one would expect, but maybe this will be resolved in future versions.

cheers
Oliver

···


Oliver Obst 0261 287-2774 101% – how much do you give?
AI Research Group
U Koblenz B219 https://www.uni-koblenz.de/~fruit/about/pgp.html