Guile path for scm files

John Ralls jralls at ceridwen.us
Sat Mar 14 20:05:28 EDT 2015


> On Mar 15, 2015, at 4:46 AM, David Christopher <chrstdvd at gmail.com> wrote:
> 
> I have edited my .profile file by adding this line to the very end.
> 
> PATH="$PATH:$HOME/Documents"
> 
> Now with that in there I can in terminal type "echo $PATH and get this
> return:
> 
> david at david-Aspire-XC-605G ~ $ echo $PATH
> /home/david/Documents:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/home/david/Documents
> 
> Supposedly when I chmod to make the hello.scm practice file executable and
> run from the terminal command line I should see the Hello World.  As
> opposed to on the command line typing "guile hello.world".
> 
> When I type hello.scm in terminal command line, I get the following error.
> 
> -----------------------------------------------------------------------------------------------------------------------------------------------
> david at david-Aspire-XC-605G ~ $ hello.scm
> ;;; Stat of /home/david/?s failed:
> ;;; ERROR: In procedure stat: No such file or directory:
> "/home/david/\u2013s"
> Backtrace:
> In ice-9/boot-9.scm:
> 157: 8 [catch #t #<catch-closure 1f48400> ...]
> In unknown file:
>   ?: 7 [apply-smob/1 #<catch-closure 1f48400>]
> In ice-9/boot-9.scm:
>  63: 6 [call-with-prompt prompt0 ...]
> In ice-9/eval.scm:
> 432: 5 [eval # #]
> In ice-9/boot-9.scm:
> 2320: 4 [save-module-excursion #<procedure 1f7ad00 at
> ice-9/boot-9.scm:3961:3 ()>]
> 3968: 3 [#<procedure 1f7ad00 at ice-9/boot-9.scm:3961:3 ()>]
> 1645: 2 [%start-stack load-stack ...]
> 1650: 1 [#<procedure 1f780f0 ()>]
> In unknown file:
>   ?: 0 [primitive-load "/home/david/\u2013s"]
> 
> ERROR: In procedure primitive-load:
> ERROR: In procedure open-file: No such file or directory:
> "/home/david/\u2013s"
> -----------------------------------------------------------------------------------------------------------------------------------------------------------------------
> Now without that line in .profile, I get "file not found"
> 
> A friend told me I get te \u0213s from having a bad character in the
> .profile file in that added line.  Well, I have typed it in by hand several
> times, copied an untouched .profile from my back up into the thing and
> still get the error.  Also tried creating the .bashrc and the
> .pamenvironment file and I get the same error with those two files.
> 
> Anyone know why I get this "No such file or directory: "/home/david/\u2013s"
> "  ??
> It should say "/home/david/Documents"
> 
> I studied the Guile Reference Manual about %load and setting environmental
> variables.
> 
> In guile "load" does not look in the path, it seems to only look in current
> directory for the file to load.  I did copy and paste the hello.scm in the
> 2.0 directory where the Manual says scm files should be.  Then I entered
> (load-from-path "hello.scm") and that works fine.
> 
> Thanks for any help and especially looking a a newbee proplem.

David,

Might I suggest that our developer list is not the appropriate place to teach you how to use Linux nor to program in Scheme? This list is not for newbies, sorry.

As I told you before, the PATH environment variable is used by the shell to find executable files. It is the matter of having the hello.world file executable and beginning with #!/usr/bin/guile that allows you to type its name directly from the command line; including your Documents directory in $PATH just saves you from having to type out the path. Try that instead:
  Documents/hello.world
and see if you get the same error.

Don't reply here, nor to me personally. Find resources appropriate to what you need to learn. An adult-education class on Linux and/or beginning programming would be an excellent option.

Regards,
John Ralls






More information about the gnucash-devel mailing list