[ruby-talk:00198] Re: auto-loaded script?

From: matz@... (Yukihiro Matsumoto)
Date: 1999-01-18 08:06:30 UTC
List: ruby-talk #198
In message "[ruby-talk:00197] Re: auto-loaded script?"
    on 99/01/18, Julian Fondren <julian@imaji.net> writes:
|
|>       rb_load_file("/home/julian/.rubyrc");  /* this line added */
|
|With this line in, ruby doesn't compile. No errors or anything, nothing
|seems wrong at all - except that at the end of make there is no `ruby'
|binary.

Hmm, it is strange. 

| Also related is that I had it pointed to a ruby file in the
|lib/ruby directory, in which it was to require a script in
|ENV['HOME']/.rubyrc and during the compile there was an error that
|the the path ENV['HOME']/.rubyrc resulted in (and this error gave the
|exact path) did not exist - which it did. What is strange about this is
|that the compile shouldn't have read the script, right? I thought the
|above line told ruby to read /home/julian/.rubyrc upon ruby's starting up.

Could you tell me what exactly happened, i.e, show me your main.c,
compilation messages from make, error messages from Ruby, please.

At first, I thought that was because rb_load_file() does not evaluate
nor expand path.  You have to get the full path of the loading file by
yourself.  For example,

   char path[256];

        :
   snprintf(path, 256, "%s/.rubyrc", getenv("HOME"));
   rb_load_file(path);
        :

But error was happened in Ruby file.  I don't get what is happening.

                                                matz.

In This Thread